9 mysql
SELECT * FROM menu WHERE item_id = 1 OR item_id = 2 OR item_id = 3;
Run Code Online (Sandbox Code Playgroud)
上面的语句返回3行.但是下面的陈述只返回2行.
SELECT * FROM menu WHERE item_id = 1 OR item_id = 1 OR item_id = 2;
Run Code Online (Sandbox Code Playgroud)
我理解为什么喜欢,但有没有办法强制item_id 1被返回两次???
我想要返回的示例:
id - > 1 Chips€2.50
id - > 1 Chips€2.50
id - > 2 Coke€1.60
--------------------
总计€6.60
例如,你可以加入另一张桌子
SELECT * FROM menu
INNER JOIN order_items ON menu.item_id = order_items.item_id
WHERE order_id = 123;
Run Code Online (Sandbox Code Playgroud)
或者只是在您的应用程序中复制它们
你不应该真的需要做你想要的.
你必须做这样的事情:
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
Run Code Online (Sandbox Code Playgroud)