重复记录筛选,求一SQL语句.

时间:2022-01-19 15:13:04
表1,N列,其中有两列,A,B,A列有重复,B列无重复(数字列)另外还有一张表2,rdid列的值和表1的id值相同.

筛选出不重复的A列的列表且求出的A列里的那一行B是最大的.

select 表1.A as a, 表1.B as b,表2.C as c FROM 表1 left JOIN 表2 ON 表2.reid=表1.id where 表1.b=SELECT top 1 b FROM 表1"

上面那条语句未通过.

请正解!

谢谢.

5 个解决方案

#1


我认为你说的问题和表2没有关系啊
select top 1 distinct A from 表1 order by B desc

#2


筛选出不重复的A列的列表且求出的A列里的那一行B是最大的.
select * from (select  A,max(B) as maxB from 表1 group by A) order by maxB DESC

#3


我要统计的是表2里c的值.
所以需要2个表联合查询.
一个表的话"管子"的语句通过!

#4


表1
A          B         reid
A1         0          1
A1         1          1
B1         0          2
C1         0          3
C1         1          3
C1         2          3
表2:
C         id
d1         1
d2         2
d3         3
------------------------------------
要求得出的结果:
A         B         B
A1        1         1
B1        0         2
C1        2         3
------------------------------------------

#5


要求得出的结果:(上面打错了列名,应为c列)
A         B         C
A1        1         1
B1        0         2
C1        2         3

#1


我认为你说的问题和表2没有关系啊
select top 1 distinct A from 表1 order by B desc

#2


筛选出不重复的A列的列表且求出的A列里的那一行B是最大的.
select * from (select  A,max(B) as maxB from 表1 group by A) order by maxB DESC

#3


我要统计的是表2里c的值.
所以需要2个表联合查询.
一个表的话"管子"的语句通过!

#4


表1
A          B         reid
A1         0          1
A1         1          1
B1         0          2
C1         0          3
C1         1          3
C1         2          3
表2:
C         id
d1         1
d2         2
d3         3
------------------------------------
要求得出的结果:
A         B         B
A1        1         1
B1        0         2
C1        2         3
------------------------------------------

#5


要求得出的结果:(上面打错了列名,应为c列)
A         B         C
A1        1         1
B1        0         2
C1        2         3