SQL如何根据主类别查找非重复子类别

时间:2016-08-08 02:44:12

标签: sql sql-server

有一个包含3列的表格。 ID,Main和Sub1 我想编写一个查询,如果Main列是唯一的,它将在Sub1列中选择字符串。因此,例如Sub1中的文本可以是完全相同的单词,但主列中的单词是不同的,它将显示两个记录。请看图片 enter image description here

1 个答案:

答案 0 :(得分:0)

你似乎几乎想要:

select distinct main, sub1
from t
where sub1 is not null;

但是,id阻碍了它。因此,请改用group by

select min(id) as id, main, sub1
from t
where sub1 is not null
group by main, sub1;

注意:这假定sub1的空值为NULL。如果它们是空字符串,则使用where sub1 <> ''