sqlserver模仿mysql函数FIND_IN_SET,group_concat的功能
2017-05-25 17:41
411 查看
一、判断某个逗号隔开的字段中有某个值
FIND_IN_SET('a','a,b,c,d') 用 CHARINDEX(','+'b'+',' , ','+'a,b,c'+',') > 0 替代
二、模仿mysql的group_concat的示例
FIND_IN_SET('a','a,b,c,d') 用 CHARINDEX(','+'b'+',' , ','+'a,b,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 , 1 , '' ) FROM tb AS a GROUP BY id
--删除、创建临时表 drop table #table1; select * into #table1 from ( 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('')) , 1 , 1 , '' ) from #table1 ta group by myId ) dd order by LEN(val) desc
相关文章推荐
- FIND_IN_SET和GROUP_CONCAT的用法
- mysql函数group_concat,find_in_set
- mysql 函数FIND_IN_SET、group_concat 、concat、cast的高级应用
- mysql之使用find_in_set和group_concat组合递归函数时数据不全
- mysql find_in_set 和 group_concat
- mysql find_in_set用法 以及group_concat()函数
- mysql 字符处理 FIND_IN_SET,GROUP_CONCAT
- mysql 自定义函数declare group_concat()、find_in_set()
- 【mysql】 GROUP_CONCAT与FIND_IN_SET
- MySQL中GROUP_CONCAT函数长度限制处理/实现行转列的功能
- Mysql函数FIND_IN_SET()的使用方法
- group_concat函数与find_in_set()函数相结合
- Hive中实现group concat功能(不用udf)
- postgresql如何实现group_concat功能
- 解决group_concat(ids)之后,无法使用 in的问题
- postgresql如何实现group_concat功能
- Hive中实现group concat功能(不用udf)
- array_filter、find_in_set查询id是否在id集合中、concat连接字符串,ifnull、if用法
- php 把多维数组中,某值相同的项合并,重组数据(不用再愁postgres中无mysql中的group_concat()功能)