#简介
原文链接:https://culturesun.site/index.php/archives/502.html
这是最近工作中遇到的一个业务场景,需要按字符将字符串拆分成多个子字符串,这就类似编程语言中的split函数。
#详解
##业务场景
需要从表中查询一个字段,这个字段是由多个或者一个字符串拼接而成,中间由,
隔开。 所以需要拆分这个字段,然后依次用拆分后字符串做为条件从另一个表中查询一个字段,最后再用,
拼接查询结果。 看一下示例:
select aa from table_a;
--先假设查询结果aa的一个为 111,222
select bb from table_b where bb2='111';
--假设查询结果bb为1212
select bb from table_b where bb2='222';
--假设查询结果bb为1313
而我最终要获取到得结果是 1212,1313
##SQL server实现
SQL server中有一个分割字符串的函数parsename
,直接看实例如何使用。
select parsename('11.22',1);
select parsename('11.22',2);
select parsename('11.22',3);
select parsename('11,22',3);
--查询结果依次是
22
11
null
11,22