我的表名为用户,其中包含列
登录
名字
姓氏
和电子邮件地址。
我想出现的是什么
电子邮件,不是唯一,并且不显示以“ geen ”和“ na ”开头的电子邮件地址。
有人能帮帮我吗?
答案 0 :(得分:3)
您可以使用like
删除在where
子句中启动或包含某些字符串的电子邮件。
如果您只想要email
列和重复数量,可以使用count()
聚合group by
并使用having
子句仅显示{{1}的结果1}}:
count(*) > 1
如果您想查看具有重复项的电子邮件的所有行数据,您可以使用common table expression以及select email, count(*) as cnt
from users
where email not like 'green%'
and email not like 'na%'
group by email
having count(*) > 1
窗口聚合函数或row_number()
count(*) over()
答案 1 :(得分:2)
您可以使用:
SELECT email, COUNT(email) AS qty
FROM users
WHERE email NOT LIKE 'geen%'
AND email NOT LIKE 'na%'
GROUP BY email
HAVING ( COUNT(email) > 1 )
答案 2 :(得分:0)
SELECT * 来自用户 哪里的电子邮件不像'geen%' 和电子邮件不喜欢'na%'