select f1,f2,f3
from tablename
where f3 in (select f3 from tablename group by f3 having count()>1)
这个是个SQL行转列的问题,例子如下:
Create table test (yhmc char(10),splb char(10),xfe int,xfsj char(10))
go
insert test values('张三','语文',80,'2007-10-01')
insert test values('张三','语文',80,'2007-10-01')
insert test values('张三','数学',86,'2007-10-01')
insert test values('张三','英语',75,'2007-10-01')
insert test values('李四','语文',78,'2007-10-01')
insert test values('李四','数学',85,'2007-10-01')
insert test values('李四','英语',78,'2007-10-01')
declare @sql varchar(8000)
set @sql = 'select yhmc'
select @sql = @sql + ',sum(case splb when '''+splb+''' then xfe end) ['+splb+']'
from (select distinct splb from test) as a
select @sql = @sql+' from test group by yhmc'
exec(@sql)
drop table test
以上SQLServer2000测试通过
我的你用的前面的Test只是我做的测试数据,你用的只是
declare @sql varchar(8000)
set @sql = 'select yhmc'
select @sql = @sql + ',sum(case splb when '''+splb+''' then xfe end) ['+splb+']'
from (select distinct splb from test) as a
select @sql = @sql+' from test group by yhmc'
exec(@sql)
然后说一句,我这个行转列只是一个把2个SQL拼在一起的方式,不好再省了,要不你做个视图放到数据库里面去,试试查询这个视图吧
3)好吧,给你一个我认为不太好的答案
select yhmc '用户名称',sum(case splb when 'A类消费'then xfe else 0 end) 'A类消费',
sum(case splb when 'B类消费'then xfe else 0 end) 'B类消费',
sum(case splb when 'C类消费'then xfe else 0 end) 'C类消费'
from test group by yhmc
SQL语句查数据库中某一列是否有重复项
SELECT
某一列,
COUNT( 某一列 )
FROM
表
GROUP BY
某一列
HAVING
COUNT( 某一列 ) 〉1
这样查询出来的结果, 就是 有重复, 而且 重复的数量。
以上就是关于关于查找数据库SQL中重复项问题全部的内容,包括:关于查找数据库SQL中重复项问题、数据库重复项查询、SQL语句查数据库中某一列是否有重复项等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)