【发布时间】:2020-07-04 12:19:53
【问题描述】:
WITH t as (
SELECT *
FROM scd p
WHERE p.modified_date > FROM_UNIXTIME(1593060230)
AND ( p.main_id = 1
OR FIND_IN_SET(1, p.mult_ids) <> 0 )
ORDER BY modified_date DESC
LIMIT 2 OFFSET 0
),
del as (
SELECT
*
FROM t WHERE (status <> 1 AND status <> 2)
),
w_del as (
SELECT
*
FROM t WHERE (status = 1 OR status = 2)
)
SELECT w_del.*, del.* FROM w_del,del;
我如何通过普通的子查询来实现这一点。我正在使用 MySQL 5.7 并且不能使用 CTE。如果我使用 UNION/子查询,我将无法重用表错误。有没有办法在没有临时表的情况下实现这一点?
请帮忙。
【问题讨论】: