来自百度的提问: 我想实现下面的sql语句 表名:sj_dj id djbm sname 1 001 a 2 001 a 3 004 b 4 002 b 5 003 c 结果为: id djbm sname 1 001 a 3 004 b 4 002 b 5 003 c 因为id为主键递增的,用distinct 取出的值还是全部,请问如何写SQL语句? 回答: select distinct max(z.id),z.djbm,z.sname from sj_dj z group by z.djbm, z.sname distinct 在这里没有什么作用,去掉后结果一样 select b.id,a.* from (select distinct djbm,sname from sj_dj) a left join sj_dj b on a.djbm=b.djbm 或者: select min(id) as id,djbm,sname from sj_dj group by djbm, sname
sql distinct
猜你喜欢
转载自576017120.iteye.com/blog/1507572
今日推荐
周排行