续:这个问题有点难度 楼主中午才结帖,怎么又问同样的问题?http://community.csdn.net/Expert/topic/4987/4987852.xml?temp=.8763239 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不知道这个问题能不能通过写SQL实现 YiZhiNet(温馨提示------开帖请结帖) 刚才的那个帖子里的“班级编号”是互不重复的,现在的问题是“班级编号”有重复记录的 一样的,只不过连接时产生了重复行而已.用个DISTINCT即可.DECLARE @t TABLE(ID INT , 班级编号 VARCHAR(100), 新闻编号 VARCHAR(10),发布日期 datetime)INSERT @t SELECT 1 , '|20|', 'aa','2005-5-5'UNION ALL SELECT 2 , '|20|34|' , 'bb','2006-5-4'UNION ALL SELECT 3 , '|32|', 'cc','2006-4-4'UNION ALL SELECT 4, '|21|34|','dd' ,'2006-4-6'DECLARE @s VARCHAR(1000)SELECT @s=ISNULL(@s,'') + 班级编号 FROM @tSELECT @s=REPLACE(@s,'||','|')SELEct @s=SUBSTRING(@s,2,LEN(@s)-2)SELECT @sSELECT DISTINCT ID,a.a 班级编号,新闻编号,发布日期FROM dbo.Split(@s,'|') aINNER JOIN @t bON CHARINDEX('|'+a.a+'|',班级编号)>0/*1 20 aa 2005-05-05 00:00:00.0002 20 bb 2006-05-04 00:00:00.0002 34 bb 2006-05-04 00:00:00.0003 32 cc 2006-04-04 00:00:00.0004 21 dd 2006-04-06 00:00:00.0004 34 dd 2006-04-06 00:00:00.000*/ 谢谢大家了,可以了特别感谢fcuandy(老菜鸟) ,今天帮了我两次了,再次感谢! 求高手帮忙列变行~ oracle中的to_char,sql server 2005对应的方法是什么 如何把Select查询得到的单列记录集插入一个表中制定的一列?(类型相同) 北大数据库原理的实验题 MSSQL 语句优化 急急急! 请教高手:错误207:列名'客户编号'无效? 求救!如何禁止复制呀!一定给分 50分让大家讨论:合并复制后会不会影响已经做好的程序调用数据库? girl#sql#girl? 简单问题,关于插入数据 如何检查一个sqlserver 2005密码是否是强密码?有没有内置函数? 哪位大G来帮帮忙呀。。关于用C#解析xml文件时遇到的问题
刚才的那个帖子里的“班级编号”是互不重复的,现在的问题是“班级编号”有重复记录的
INSERT @t SELECT 1 , '|20|', 'aa','2005-5-5'
UNION ALL SELECT 2 , '|20|34|' , 'bb','2006-5-4'
UNION ALL SELECT 3 , '|32|', 'cc','2006-4-4'
UNION ALL SELECT 4, '|21|34|','dd' ,'2006-4-6'DECLARE @s VARCHAR(1000)
SELECT @s=ISNULL(@s,'') + 班级编号 FROM @t
SELECT @s=REPLACE(@s,'||','|')
SELEct @s=SUBSTRING(@s,2,LEN(@s)-2)
SELECT @s
SELECT DISTINCT ID,a.a 班级编号,新闻编号,发布日期
FROM dbo.Split(@s,'|') a
INNER JOIN @t b
ON CHARINDEX('|'+a.a+'|',班级编号)>0
/*
1 20 aa 2005-05-05 00:00:00.000
2 20 bb 2006-05-04 00:00:00.000
2 34 bb 2006-05-04 00:00:00.000
3 32 cc 2006-04-04 00:00:00.000
4 21 dd 2006-04-06 00:00:00.000
4 34 dd 2006-04-06 00:00:00.000
*/
特别感谢fcuandy(老菜鸟) ,今天帮了我两次了,再次感谢!