同一列的其他列中不存在MySQL列值

时间:2019-01-21 06:15:21

标签: mysql sql duplicates

我想运行mysql查询以从表“ a”中选择所有行,其中ID_REFERENCE列中ID列的值不存在。

这是我的桌子内容:

  

| ID | ID_REFERENCE |总计| NAME |
  | 1个   | 3   | 1500 |约翰|
| 2   | --   | 1000 |埃里克·|
  | 3   | 1 |   1300 |约翰|
| 4   | 8 |   1000 |亚历克斯|
| 5   | --   | 2000 | Bani |
| 6   | 7 |   1800 |阿迪斯|
| 7   | --   | 500 |阿迪斯|
  | 8   | 4   | 700 |亚历克斯|

我需要对此显示

  

| ID | ID_REFERENCE |总计| NAME |
  | 1个   | 3   | 2800 |约翰|
| 2   | --   | 1000 |埃里克·|
  | 4   | 8 |   1700 |亚历克斯|
| 5   | --   | 2000 | Bani |
| 6   | 7 |   2300 |阿迪斯|

ID 列是唯一的

我很难得到希望。谢谢

2 个答案:

答案 0 :(得分:1)

不存在

 select t1.* from a t1 where
 not exists ( select 1 from a t2 where t2. ID_REFERENCE =t1.id)

或不在其中使用

 select t1.* from a t1 where a.ID not in ( select  ID_REFERENCE  from a where a. ID_REFERENCE  is not null)

答案 1 :(得分:0)

您可以在下面尝试-

select min(id), max(ID_REFERENCE), sum(TOTAL),name
    from tablename
    group by name