0

我需要找到一个可以将 IF 条件与“groupconcat”一起使用的解决方案

select 
GROUP_CONCAT(
 DISTINCT bug_id) 
 from bugs 
 where sum( 
  IF((timediff(delta_ts,creation_ts) > "00:02:00") && (priority="P1") ,1,0))) 
as bugids

它正在抛出错误。

ERROR 1111 (HY000): 组函数使用无效

注意:- 此选择查询用作内部查询。

使用 groupcontact 和 where 条件获取结果错误 ID 的任何解决方案?

4

2 回答 2

1
select GROUP_CONCAT( DISTINCT bug_id) from bugs where 
sum( IF((timediff(delta_ts,creation_ts) > "00:02:00") && (priority="P1") ,1,0))
于 2013-06-16T05:55:32.157 回答
0

得到了答案。

select 
GROUP_CONCAT( 
 DISTINCT bug_id) 
 from bugs 
 where  ( 
 IF(
 (timediff(delta_ts,creation_ts) > "00:02:00") && (priority="P1") 
 && (product_id=237)
 &&(bugs.resolution='FIXED')
 &&(bug_status="RESOLVED")
 &&(bugs.creation_ts >='2013-06-14 09:00:00' 
 and bugs.creation_ts <= '2013-06-16 08:59:59') ,1,0)) ;
+--------------------------------+
| GROUP_CONCAT(DISTINCT bug_id) |
+--------------------------------+
| 3743304 |
+--------------------------------+
1 行,65535 个警告(5.86 秒)

于 2013-06-16T06:35:17.367 回答