您的位置:首页 > 数据库 > MySQL

MSSQL, MYSQL 字符串拆分

2015-10-14 13:27 591 查看
MSSQL:

MSSQL 2005 以上

1.

declare @str nvarchar(2000),

@split nvarchar(10)

set @str = '广东省,广州市,越秀区'

set @split =','

SELECT B.id

FROM

(

SELECT [value] = CONVERT(XML, '<v>' + REPLACE(@str , @split , '</v><v>')+ '</v>')

) as A

OUTER APPLY

(

SELECT id = N.v.value('.' , 'varchar(100)')

FROM A.[value].nodes('/v')N(v)

) as B

2.

declare @str nvarchar(2000)

declare @sql nvarchar(4000)

declare @split nvarchar(10)

set @str = '广东省,广州市,越秀区'

set @split =','

set @sql='select decs ='''+ replace(@str, @split, ''' union all select ''')+''''

exec (@sql)

MYSQL:

SET @b = '广东省,广州市,越秀区';

SET @a = REPLACE(@b,',', ' union all select ');

SET @a = CONCAT('select ', @a);

PREPARE rc FROM @a;

EXECUTE rc;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: