MySql选择是否确定应实现的条件
我的查询有两个条件,如果count(a.id)大于1,那么where条件是像“%2%”这样的天数,或者像“%6%”这样的天数。但我不知道该怎么做。我试过下面这个问题,但它错了 有人能帮我吗?谢谢 对我的英语很抱歉MySql选择是否确定应实现的条件,mysql,Mysql,我的查询有两个条件,如果count(a.id)大于1,那么where条件是像“%2%”这样的天数,或者像“%6%”这样的天数。但我不知道该怎么做。我试过下面这个问题,但它错了 有人能帮我吗?谢谢 对我的英语很抱歉 SET @time = '20:59:59'; SELECT * FROM `msshift` a WHERE IF( a.`TIMEFROM` < a.`TIMETO`, CAST(@time AS TIME) BETWEEN a.`TIMEF
SET @time = '20:59:59';
SELECT *
FROM `msshift` a
WHERE IF(
a.`TIMEFROM` < a.`TIMETO`,
CAST(@time AS TIME) BETWEEN a.`TIMEFROM` AND a.`TIMETO`,
(CAST(@time AS TIME) BETWEEN CAST('00:00:00' AS TIME) AND a.`TIMETO`) OR
(CAST(@time AS TIME) BETWEEN a.`TIMEFROM` AND CAST('24:00:00' AS TIME))
) = 1 AND PLANT = '1011' AND IF(COUNT(a.ID) > 1, a.DAYS LIKE '%2%', a.DAYS LIKE '%6%')
SET@time='20:59:59';
挑选*
从'msshift'a
如果(
a、 'TIMEFROM`1,a.DAYS类似于'%2%',a.DAYS类似于'%6%'))
不能在where子句中使用聚合函数。这就是“拥有”条款的目的
如果不看结构,不知道你的目标是什么结果,我无法说出具体的查询是什么,但这里有一个例子
表:富
id:INT
外国识别码:INT
姓名:CHAR
SELECT count(*) as grouped_count from foo
GROUP BY foreign_id
HAVING grouped_count > 5
这将返回属于外部表且其组中有5条以上记录的每组记录
希望这有帮助