【问题标题】:SQL Query Duplicates ValuesSQL 查询重复值
【发布时间】:2022-01-13 19:47:23
【问题描述】:

我正在运行查询以查看谁还没有注册课程,每当我这样做时,它都会复制学生信息并显示两次。有什么理由明智地查询它会这样做吗?

这是查询。

SELECT DISTINCT a.grade, a.lastname, a.firstname, a.sid 
FROM aspen a 
LEFT JOIN gh g ON a.sid = g.sid 
WHERE g.sid IS NULL 
order by a.grade, a.lastname, a.firstname

【问题讨论】:

  • 这里可能发生的唯一方法是aspen 中有重复的行。
  • SELECT DISTINCT 不可能发生这种情况。
  • 你确定所有的列都是重复的吗?检查难以区分的字符,例如空格。

标签: mysql sql database


【解决方案1】:

由于您对来自gh 的任何数据不感兴趣,请使用not exists

select grade, lastname, firstname, sid 
from aspen a 
where not exists (select * from gh where gh.sid = a.sid)
order by grade, lastname, firstname

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-07
    • 1970-01-01
    • 2017-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多