任何人都可以帮我吗?
我需要创建一个SQL查询。我得到了这个名为" slt_especificidade_caso":
的表
我需要创建一个SQL查询,它将这个结构带回一行:
epc_id_pergunta :列
中的值first_quarter :此表中寄存器的数量(例如,行数)当前日期减去( - )列epc_des_valor中的值小于或等于90天
second_quarter :此表中寄存器的数量(例如,行数)当前日期减去( - )epc_des_valor列中的值大于90且小于或等于180天
third_quarter :此表中寄存器的数量(例如,行数)当前日期减去( - )epc_des_valor列中的值大于180且小于270天。
我很感激一些帮助。提前谢谢!
答案 0 :(得分:2)
案例陈述应该这样做。
select
epc_id_pergunta ,
sum(case when str_to_date(epc_des_valor, '%d/%m/%Y')
between DATE_SUB(CURRENT_DATE(), INTERVAL 90 DAY)
AND CURRENT_DATE()
then 1 else 0 end) as first_quarter,
sum(case when str_to_date(epc_des_valor, '%d/%m/%Y')
between DATE_SUB(CURRENT_DATE(), INTERVAL 180 DAY)
AND DATE_SUB(CURRENT_DATE(), INTERVAL 90 DAY)
then 1 else 0 end) as second_quarter,
sum(case when str_to_date(epc_des_valor, '%d/%m/%Y')
between DATE_SUB(CURRENT_DATE(), INTERVAL 270 DAY)
AND DATE_SUB(CURRENT_DATE(), INTERVAL 181 DAY)
then 1 else 0 end) as third_quarter
from
slt_especificidade_caso
where
str_to_date(epc_des_valor, '%d/%m/%Y')
between DATE_SUB(CURRENT_DATE(), INTERVAL 270 DAY)
AND CURRENT_DATE()
查看此sql fiddle