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;