我有一个sql代码,其中我使用IN运算符搜索值,有时我想传递过滤器“any”以获取存在的任何数据。 但我不知道是怎么回事。
SELECT COALESCE(TIME_TO_SEC(SUM(final_date_report - initial_date_report)), 0)
FROM work_order
WHERE construction_id IN (:idConstruction) AND equipment_id IN (:idEquipment)
idConstruction和idEquipment是类似[29,2]...
SELECT COALESCE(TIME_TO_SEC(SUM(final_date_report - initial_date_report)), 0)
FROM work_order
CROSS JOIN ( SELECT :idConstruction construction_id_criteria,
:idEquipment equipment_id_criteria ) criteria
WHERE (FIND_IN_SET(construction_id, construction_id_criteria) OR construction_id_criteria = 'ANY')
AND (FIND_IN_SET(equipment_id, equipment_id_criteria) OR equipment_id_criteria = 'ANY')