Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql case语句中出错(错误1241(21000):操作数应包含1列)_Mysql_Operands - Fatal编程技术网

Mysql case语句中出错(错误1241(21000):操作数应包含1列)

Mysql case语句中出错(错误1241(21000):操作数应包含1列),mysql,operands,Mysql,Operands,我有一个表格,我想得到基于性别和分数的记录,比如如果分数超过70,男性数据将显示其他女性数据,我想使用案例陈述。 mysql查询是 select Parent_Id,Emp_Id,Emp_Gender,Emp_Score from EVENT_DETAIL where Emp_Score = (case when Emp_Score > '70' then (select * from EVENT_DETAIL where Emp_Gender = 'Male') else (sele

我有一个表格,我想得到基于性别和分数的记录,比如如果分数超过70,男性数据将显示其他女性数据,我想使用案例陈述。 mysql查询是

select Parent_Id,Emp_Id,Emp_Gender,Emp_Score from EVENT_DETAIL where 
Emp_Score = (case when Emp_Score > '70' then (select * from EVENT_DETAIL 
where Emp_Gender = 'Male') else (select * from EVENT_DETAIL where 
Emp_Gender = 'Female') end); 

但在这种情况下,操作数的am get error应该包含1列

这是您想要的吗

(select Parent_Id,Emp_Id,Emp_Gender,Emp_Score from EVENT_DETAIL where Emp_Score > 70 and Emp_Gender = 'Male')
union all
(select Parent_Id,Emp_Id,Emp_Gender,Emp_Score from EVENT_DETAIL where Emp_Score <= 70 and Emp_Gender = 'Female');

CASE表达式必须返回单个标量值。您返回的是一个完整的表—许多行,许多列。您的查询毫无意义。您正在混合CASE表达式和CASE语句。您正在告诉我的查询我已经尝试过了,但我只想使用CASE语句执行新查询我已从事件详细信息中选择*,其中Emp\u Score IN CASE when Emp\u Score>='70',然后选择group\u concat,Emp\u Score,作为事件详细信息中的Emp_分数,其中Emp_性别='男性',否则选择组,Emp_分数,作为事件详细信息中的Emp_分数,其中Emp_性别='女性'结束;现在我得到了一套空的。