我需要进行查询以验证作物种植日期和作物收获。从“ Clt_Sembrado ”表中,取决于表格中的培养代码 Clt_Desglose
例如:
如果产品(种植)有代码(表“Clt_Desglose”)= 0111.01或0111.02,那么收获日期(Clt_Sembrado中的d_MesAnioSiembra)必须更少比种植日期(在Clt_Sembrado的d_MesAnioCosecha)+ 6个月
我正在尝试构建查询。但我不知道怎么做If句。
这是查询,但我需要帮助来验证这一点。
SELECT
c_Fk_IdBoleta as Numero_Boleta,
'Pregunta (12)' as Numero_Pregunta,
'El período de siembra y cosecha no corresponde al tipo de cultivo' as Detalle_Error
FROM
Clt_Sembrado as sembrado
WHERE
sembrado.c_Fk_IdBoleta = 45550711
GROUP BY sembrado.c_Fk_IdBoleta, sembrado.d_MesAnioSiembra, sembrado.d_MesAnioCosecha, sembrado.si_Fk_IdDesglose
HAVING sembrado.d_MesAnioCosecha < (SELECT c_Fk_CodCiiu4
FROM Clt_Desglose as desglose
WHERE sembrado.si_Fk_IdDesglose = desglose.si_Pk_IdDesglose)
以下是我需要获取值的表格:
如何进行此查询?感谢..
答案 0 :(得分:0)
您可以使用CASE
语句实现条件。
示例:
select
name,
age,
case
when age < 13 then 'Child'
when age between 13 and 17 'Teenager'
when age between 18 and 20 'Young Adult'
else 'Adult'
end as AgeGroup,
case gender
when 'M' then 'Male'
when 'F' then 'Female'
else 'Unknown'
end as Gender
from YourTable
相应地将概念调整为您的查询。