SELECT * FROM menu WHERE item_id = 1 OR item_id = 2 OR item_id = 3;
上述语句返回 3 行。 但是下面的语句只返回 2 行。
SELECT * FROM menu WHERE item_id = 1 OR item_id = 1 OR item_id = 2;
我明白为什么喜欢,但是有没有办法强制将 item_id 1 返回两次???
我想要返回的示例:
id -> 1 Chips €2.50
id -> 1 Chips €2.50
id -> 2 Coke €1.60
--------------------
Total €6.60
最佳答案
你必须做这样的事情:
SELECT * FROM menu WHERE item_id = 1
UNION ALL
SELECT * FROM menu WHERE item_id = 1
UNION ALL
SELECT * FROM menu WHERE item_id = 2
关于MySQL 表 -> 你能在同一个查询中多次返回同一行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1109113/