我收到此错误
The used SELECT statements have a different number of columns
当我尝试执行此查询时
SELECT DISTINCT * FROM `items` WHERE `tags` LIKE '%winner%' ESCAPE '!' UNION SELECT DISTINCT * FROM `lists` WHERE `tags` LIKE '%winner%' ESCAPE '!'
THX
答案 0 :(得分:3)
使用UNION或UNION ALL时,必须确保查询中的列数相同,例如:
SELECT Product_ID,Product
FROM Products
UNION
SELECT Product
FROM Orders
无效,因为两个查询不会返回相同数量的列。但是:
SELECT Product_ID,Product
FROM Products
UNION
SELECT Order_ID,Product
FROM Orders
可行,因为每个列中的列数相同。
我会摆脱' SELECT *'在您的查询中。
答案 1 :(得分:0)
请指定列名而不是" *"在sql。
精通:
SELECT DISTINCT Col1,Col2,col3 FROM items
WHERE tags
LIKE'%获胜者%'
联盟
SELECT DISTINCT Col1,Col2,col3 FROM lists
WHERE tags
LIKE'%获胜者%'