我有两个输出相同的查询(但是它们没有相同的顺序)。但是这两个查询的结果有不同的设计。下面是两张截图:
Query1:

Query2:

正如您所看到的,第二个查询对于每一行都有一些工具(编辑、删除、复制)。为什么第一个查询没有?
编辑:这里是这两个查询:
Query1:
(SELECT id, event, seen, time_stamp
FROM notifications n
WHERE id_user = 123 AND seen IS NULL
)UNION
(SELECT id, event, seen, time_stamp
FROM notifications n
WHERE id_user = 123 AND seen IS NOT NULL
LIMIT 2
)UNION
(SELECT id, event, seen, time_stamp
FROM notifications n
WHERE id_user = 123
ORDER BY (seen IS NULL) desc, time_stamp desc
LIMIT 15
)
ORDER BY (seen IS NULL) desc, time_stamp desc;Query2:
SELECT `id`, `event`, `seen`, `time_stamp`
FROM (SELECT `id`, `event`, `seen`, `time_stamp`, @`unread` := @`unread` + 1
FROM `notifications`, (SELECT @`unread` := 0) `unr`
WHERE `id_user` = 123 AND `seen` IS NULL
UNION ALL
SELECT `id`, `event`, `seen`, `time_stamp`, @`read` := @`read` + 1
FROM `notifications`, (SELECT @`read` := 0) `r`
WHERE `id_user` = 123 AND `seen` IS NOT NULL
AND (
@`read` < (15 - @`unread`) OR
((15 - @`unread`) < 0 AND @`read` < 2)
)
) `source`发布于 2016-05-27 14:55:31
我认为如果系统检测到只有一个表,就会借给您编辑。在第一个查询中,有三个表的联接(即使是同一个表),但是第二个查询直接从一个表中获取数据(这是连接的结果,但最后是mysql的数据,就像一个表)。
这很奇怪,但似乎是这样的
:)
https://stackoverflow.com/questions/37482963
复制相似问题