一、判断某个逗号隔开的字段中有某个值
FIND_IN_SET('a','a,b,c,d') 用 CHARINDEX(','+'b'+',','+'a,c'+',') > 0 替代
二、模仿MysqL的group_concat的示例
SELECT ID, val=( SELECT [value] +',' FROM tb AS b WHERE b.ID = a.ID FOR XML PATH('') ) FROM tb AS a GROUP BY ID
SELECT ID, [val]=STUFF( (SELECT ','+[value] FROM tb AS b WHERE b.ID = a.ID FOR XML PATH('')) , 1 , '' ) FROM tb AS a GROUP BY ID
--删除、创建临时表drop table #table1;select * into #table1from (SELECT myID,'auto' as type)allData--把数据按myID分类链接,然后按链接后数据的长度倒序排序select * from ( select myID, val=STUFF( (SELECT '、'+type FROM #table1 AS b WHERE b.myID = ta.myID FOR XML PATH('')) , '' ) from #table1 ta group by myID) dd order by LEN(val) desc总结
以上是内存溢出为你收集整理的sqlserver模仿mysql函数FIND_IN_SET,group_concat的功能全部内容,希望文章能够帮你解决sqlserver模仿mysql函数FIND_IN_SET,group_concat的功能所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)