我只需要从 crdd 和 schedule date 中选择 2018 年的记录
Posted
技术标签:
【中文标题】我只需要从 crdd 和 schedule date 中选择 2018 年的记录【英文标题】:I need to select only the 2018 records from the crdd and schedule date 【发布时间】:2018-03-15 13:57:01 【问题描述】:我只需要从 crdd 和计划日期中选择 2018 年的记录。这是我当前的查询:
Select distinct t1.inbound_ship_appointment_id as ISA,
t1.STANDARD_CARRIER_ALPHA_CODE as carrier_name,
t1.current_appt_start as scheduled_date,
t1.WAREHOUSE_ID as FC,
t2.carrier_req_del_date_local as crdd,
datediff(days, t1.current_appt_start , t2.carrier_req_del_date_local)
from d_fc_appointment_details t1
join o_appointment_visibility t2
on t1.inbound_ship_appointment_id= t2.inbound_ship_appointment_id
where t1.STANDARD_CARRIER_ALPHA_CODE in (
'AZIM','BTIU','HJBI','HUBG','PGLI','SCDS','SWIF','XAMS','XHMC','XHME',
'XHMM','XJMN','XJMW')
OR t1.STANDARD_CARRIER_ALPHA_CODE LIKE '%IMP%
请指教
【问题讨论】:
您是否尝试过限制所选行? 你需要稍微格式化你的代码,它很难阅读 no .. 我只想过滤掉 2018 年的记录 【参考方案1】:您好,您可以使用这条线获取年份
EXTRACT(YEAR FROM '2008-05-15') As year
【讨论】:
我的意思是我只想过滤掉 2018 年的值 嗨,如果您使用上面的代码,您可以获得像 (2018) 这样的年份并将其放在条件位置【参考方案2】:用途:
WHERE YEAR(t1.current_appt_start) = YEAR(2018)
由于您使用的是 or
运算符,因此您必须:
WHERE (
t1.STANDARD_CARRIER_ALPHA_CODE in ([...])
OR t1.STANDARD_CARRIER_ALPHA_CODE LIKE '%IMP%'
) AND YEAR(t1.current_appt_start) = YEAR(2018)
https://***.com/a/27745487/3208151
【讨论】:
您好,谢谢。 YEAR 函数在 Redshift 中有效吗? 你使用了mysql
标签,所以它可以在mysql环境下工作。请更新标签以读取 Redshift。如果是红移,请看:docs.aws.amazon.com/redshift/latest/dg/r_DATE_PART_YEAR.html
Jared 你现在可以检查一次吗?
redshift 中的 YEAR 函数别名是什么。或者如何过滤掉 crdd 和 schedule_date 列中的 2018 年值。
我提供了上面函数的链接。以上是关于我只需要从 crdd 和 schedule date 中选择 2018 年的记录的主要内容,如果未能解决你的问题,请参考以下文章
DHTMLX Scheduler Month 仅查看事件计数
Kendo UI (Scheduler) - 为每个事件添加唯一的 css 类