我有一个订购系统,可以有多个与一个订单相关的收据。我最近遇到了如下查询,该查询产生了不良结果。
SELECT info FROM orders WHERE id IN (1, 2, 2) ORDER BY FIELD (id, 1, 2, 2);
有没有办法将订单 #2 的行返回两次?截至目前,查询按预期返回第一行然后第二行;但是,在此特定情况下,需要两次返回第 2 行。
这些表大致如下(我知道它不是完全有效的 MySQL,仅用于说明):
CREATE TABLE orders (
id int(),
info VARCHAR(),
)
CREATE TABLE links (
orderid int(),
receiptid int()
)
CREATE TABLE receipts (
id int(),
otherinfo VARCHAR(),
)