SQL SERVER 的一个查询问题

来源:百度知道 编辑:UC知道 时间:2024/05/21 08:05:41
我现在有一张表,如下
tjbh tjcs XM XB DWBH TJRQ
001002 1 张天 1 0002
001003 1 李二 1 0003
001004 1 李立 1 0003
001005 2 李立 1 0003
我现在想把DWBH为0002的所有人信息选出来,而且当一个人有两条记录时,把tjcs中数值最大的那条记录选出来,请问要怎么做?在线等,急需,谢谢了!!!!
select dinstinct max(TJCS),XM,TJRQ,TJBH,ZS,JY from [futian_user].TJ_TJdJB where DWBH = '0002'group by xm
我这么写了,出现了语法错误,请问写的对不对?
这个表是这样的,
TJBH TJCS XM DWBH TJRQ
00100 1 张三 0002
00102 1 李四 0002
00102 2 李四 0002
我现在需要的是,按DWBH查询,选出目标的所有信息,其中如果有XM相同的,选出相同的XM中TJCS最大的那个,请问到底该怎么写?

select max(tjcs), xm from TA where [dwbh]='0002' group by xm
这个应该符合你的要求!

哦,对了,
下面这个可能更满足你的要求,你试试

select * from TA
where [tjcs] in (select max(tjcs) from TA where [dwbh]='0002' group by xm)

select dinstinct max(tjcs),* from 表 where dwbn='0002' group by xm

select distinct XM from TABLE where DWBH=0002 order by tjcs desc