的不同总数当我运行此查询:为什么UNION SELECT用括号/括号返回行
SELECT 1, `name` FROM `table1` WHERE `reg` = 3 AND `lang` = 5
UNION
SELECT 2, `name` FROM `table1` WHERE `reg` = 1 AND `lang` = 2
UNION
SELECT 3, `name` FROM `table1` WHERE `reg` = 6 AND `lang` = 10
它返回:Showing rows 0 - 24 (435 total, Query took 0.0110 sec)
我需要与LIMIT 5
运行这些查询,所以我必须用括号每个select
周围,在这种情况下,同样的查询,但与支架和限制:
(SELECT 1, `name` FROM `table1` WHERE `reg` = 3 AND `lang` = 5 LIMIT 5)
UNION
(SELECT 2, `name` FROM `table1` WHERE `reg` = 1 AND `lang` = 2 LIMIT 5)
UNION
(SELECT 3, `name` FROM `table1` WHERE `reg` = 6 AND `lang` = 10 LIMIT 5)
返回以下:Showing rows 0 - 24 (17098 total, 0 in query, Query took 0.0020 sec)
有什么我做错了吗?
不同的表? – vaultah
你的两个工会并不相同。第二个在各个选择中使用“LIMIT”。 'UNION'删除重复项 - 如果您使用“UNION ALL”,会发生什么情况 –
不,这是我的类型,我刚编辑过,对此感到抱歉。 – qwaz