我想查询几个选择在一个,我的查询工作没有最后一个SELECT,但与它我有一个错误,这是Operand should contain 1 column
有人可以告诉我如何纠正?加入SQL查询结果在一个
SELECT (
SELECT COUNT(*) FROM mytable WHERE TYPE = 'MSS' AND YEAR(date) = YEAR(CURDATE()) AND MONTH(date) = MONTH(CURDATE())
) as TOTAL_MSS,
(
SELECT COUNT(*) FROM mytable WHERE TYPE = 'MSS' AND S = 0 AND YEAR(date) = YEAR(CURDATE()) AND MONTH(date) = MONTH(CURDATE())
) as MSS_S,
(
SELECT COUNT(*) FROM mytable WHERE TYPE = 'MSS' AND S != 0 AND YEAR(date) = YEAR(CURDATE()) AND MONTH(date) = MONTH(CURDATE())
) as MSS_F,
(
SELECT COUNT(*) as Nb ,OR as TOP FROM mytable WHERE TYPE = 'MSS' AND YEAR(date) = YEAR(CURDATE()) AND MONTH(date) = MONTH(CURDATE()) GROUP BY OR ORDER BY Nb DESC LIMIT 1
)
如果我执行它们分开,我得到
TOTAL_MSS MSS_S MSS_F
99 12 87
Nb TOP
78 [email protected]
错误是:“使用的select语句的列数不同” – 2013-05-14 07:57:59
@KirkERW这很奇怪,因为来自union的所有查询都有2列:'Nb'和'TOP ' – Stephan 2013-05-14 08:00:39
@KirkERW对不起,我忘了一个逗号请现在就来试试 – Stephan 2013-05-14 08:01:52