"if" 语句中的子查询出错(错误 code:1241)
error with subquery in "if" statement (error code:1241)
我的查询有误 - 我认为 逻辑上 正确。
error code 1241 : operand should contain 1 column(s)
1>0
仅供测试!我将在后端使用 php 更改它。
SELECT if(1>0,(SELECT
count(lh_chat.dep_id) as chat_vorodi_be_saf,
count(lh_chat.online_user_id) as tedad_chat_mojadad,
count(lh_chat_online_user.rightel_number) as tedad_chat_shomare_yekta,
count(chat_status.status) as chat_pasokh_dade_shode
FROM
lh_chat
INNER JOIN
lh_chat_online_user
ON
lh_chat.id = lh_chat_online_user.chat_id
INNER JOIN
chat_status
ON
lh_chat.id = chat_status.chat_id where lh_chat.operation_ts between 0 and 1),'')
union all
SELECT if(1>0,(SELECT
count(lh_chat.dep_id) as chat_vorodi_be_saf,
count(lh_chat.online_user_id) as tedad_chat_mojadad,
count(lh_chat_online_user.rightel_number) as tedad_chat_shomare_yekta,
count(chat_status.status) as chat_pasokh_dade_shode
FROM
lh_chat
INNER JOIN
lh_chat_online_user
ON
lh_chat.id = lh_chat_online_user.chat_id
INNER JOIN
chat_status
ON
lh_chat.id = chat_status.chat_id where lh_chat.operation_ts between 1 and 2),'')
union all
SELECT if(1>0,(SELECT
count(lh_chat.dep_id) as chat_vorodi_be_saf,
count(lh_chat.online_user_id) as tedad_chat_mojadad,
count(lh_chat_online_user.rightel_number) as tedad_chat_shomare_yekta,
count(chat_status.status) as chat_pasokh_dade_shode
FROM
lh_chat
INNER JOIN
lh_chat_online_user
ON
lh_chat.id = lh_chat_online_user.chat_id
INNER JOIN
chat_status
ON
lh_chat.id = chat_status.chat_id where lh_chat.operation_ts between 2 and 3),'')
我会使用 case 语句而不是 if。
这部分 "if(1>0,(SELECT" 在 SELECT 之后必须只有一个字段。
我的查询有误 - 我认为 逻辑上 正确。
error code 1241 : operand should contain 1 column(s)
1>0
仅供测试!我将在后端使用 php 更改它。
SELECT if(1>0,(SELECT
count(lh_chat.dep_id) as chat_vorodi_be_saf,
count(lh_chat.online_user_id) as tedad_chat_mojadad,
count(lh_chat_online_user.rightel_number) as tedad_chat_shomare_yekta,
count(chat_status.status) as chat_pasokh_dade_shode
FROM
lh_chat
INNER JOIN
lh_chat_online_user
ON
lh_chat.id = lh_chat_online_user.chat_id
INNER JOIN
chat_status
ON
lh_chat.id = chat_status.chat_id where lh_chat.operation_ts between 0 and 1),'')
union all
SELECT if(1>0,(SELECT
count(lh_chat.dep_id) as chat_vorodi_be_saf,
count(lh_chat.online_user_id) as tedad_chat_mojadad,
count(lh_chat_online_user.rightel_number) as tedad_chat_shomare_yekta,
count(chat_status.status) as chat_pasokh_dade_shode
FROM
lh_chat
INNER JOIN
lh_chat_online_user
ON
lh_chat.id = lh_chat_online_user.chat_id
INNER JOIN
chat_status
ON
lh_chat.id = chat_status.chat_id where lh_chat.operation_ts between 1 and 2),'')
union all
SELECT if(1>0,(SELECT
count(lh_chat.dep_id) as chat_vorodi_be_saf,
count(lh_chat.online_user_id) as tedad_chat_mojadad,
count(lh_chat_online_user.rightel_number) as tedad_chat_shomare_yekta,
count(chat_status.status) as chat_pasokh_dade_shode
FROM
lh_chat
INNER JOIN
lh_chat_online_user
ON
lh_chat.id = lh_chat_online_user.chat_id
INNER JOIN
chat_status
ON
lh_chat.id = chat_status.chat_id where lh_chat.operation_ts between 2 and 3),'')
我会使用 case 语句而不是 if。
这部分 "if(1>0,(SELECT" 在 SELECT 之后必须只有一个字段。