日期:2014-05-17  浏览次数:20818 次

如何写一条SQL语句?
单位ID     单位名称   姓名
1               研发部       张三
1               研发部       张四
2               市场部       张五      
1               研发部       张六
4               办公室       张七
2               市场部       张八

通过选择得到记录:
1               研发部
2               市场部    
4               办公室

------解决方案--------------------
select 单位ID,单位名称 from 表 group by 单位ID,单位名称
------解决方案--------------------
select 单位ID,单位名称 from 表 group by 单位ID,单位名称 order by 单位ID
------解决方案--------------------
select 单位ID,单位名称 from 表 where 单位名称 is not null group by 单位ID,单位名称 order by 单位ID
------解决方案--------------------
select 单位ID,单位名称 from 表 where (单位名称 is not null or 单位名称= ' ') group by 单位ID,单位名称 order by 单位ID


null和 ' '是不一样的判断null不能使用 ' '来判断
------解决方案--------------------
Null是什么也没有,不知道,也不占空间,但是 ' '是一个空字符串,占空间的。
条件的写法 判断是否为空:field is not null / field is null
判断是否为空字符串: field = ' '
------解决方案--------------------
SQL> select distinct id,depart
2 from company
3 where depart!= ' '
4 group by id,depart
5 order by id;

ID DEPART
---------- --------------------
1 研发部
2 市场部
4 办公室