【发布时间】:2019-11-25 22:09:55
【问题描述】:
存在重复行的表。请参阅第 1 行和第 2 行:
id full_name email status active
1 John Doe john@mail.com ok 1
2 John Doe john@mail.com null 1
3 Ricky Duke rick@mail.com null 1
4 Jane Doe jane@mail.com block 1
我需要选择不同的行,而不是随机选择 - 一个不同的行,但要选择具有 'status' NOT NULL 的行。
我的查询是:
SELECT full_name, email
FROM `subscribers`
WHERE active = 1 AND (status = 'ok' OR status IS NULL)
GROUP BY email
该查询随机选择不同的行,而不优先考虑“状态”字段。
我如何优先选择具有 'status' NOT NULL 的不同行,并且仅在不存在“ok”状态的行的情况下才选择具有 NULL 的行? p>
【问题讨论】:
标签: mysql sql sql-order-by