问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sql字符串怎么按逗号分割

发布网友 发布时间:2022-04-28 22:32

我来回答

1个回答

热心网友 时间:2022-04-07 23:51

[sql]
view
plaincopyprint?
create
or
replace
function
f_intellect_first_sales_prov(var_sales
in
varchar2,
var_first_sales
in
varchar2,
var_split
in
varchar2)
return
varchar2
is
result
varchar2(1);
/****************************************************
**
[sql]
view
plaincopyprint?
**
all
rights
reserved.
**
**
函数名称:f_intellect_first_sales_province
**

数:【名称】
【类型

【说明】
**
var_sales
varchar2
字符串1,逗号分隔的,如'aaa,bbb'
var_first_sales
varchar2
字符串2,逗号分割的,如'cc,aaa'
**
var_split
varchar2
要使用的分隔符
**


值:result
varchar2
处理后返回的值1/0
**

要:如果字符串2中的某一个分割的字符串在字符串1中就返回1,否则返回0
**
**
当前版本:1.0
**
**

者:liuh
**
完成日期:2013年1月29日
**

注:
****************************************************/
var_element
varchar2(4000);
var_element2
varchar2(4000);
var_tmp
varchar2(4000);
var_tmp2
varchar2(4000);
begin
result
:=
'0';
var_tmp
:=
var_sales;
var_tmp2
:=
var_first_sales;
if
var_tmp2
is
null
or
var_tmp2
=''
then
return(result);
elsif
var_tmp
is
null
or
var_tmp
=''
then
return(result);
else
/*如果字符串1不为空,在后面加上一个特殊的字符,
这样循环时就可以直接在循环内部处理,不然需要在最外面循环出再一次处理var_tmp,因为最后一次var_tmp中不含有分隔符,不会进行loop循环*/
var_tmp
:=
var_tmp
||
var_split
||
'-1';
end
if;
while
instr(var_tmp,
var_split)
>
0
loop
/****循环字符串1,每次获得一个var_element****/
var_element
:=
substr(var_tmp,
1,
instr(var_tmp,
var_split)
-
1);
var_tmp
:=
substr(var_tmp,
instr(var_tmp,
var_split)
+
length(var_split),
length(var_tmp));
while
instr(var_tmp2,
var_split)
>
0
loop
/****循环字符串2,每次获得一个var_element2****/
var_element2
:=
substr(var_tmp2,
1,
instr(var_tmp2,
var_split)
-
1);
var_tmp2
:=
substr(var_tmp2,
instr(var_tmp2,
var_split)
+
length(var_split),
length(var_tmp2));
/*如果字符串1中有字符串2中的一个值,返回1*/
if
var_element
=
var_element2
then
result
:=
'1';
return(result);
end
if;
end
loop;
/*最后一个截取的var_tmp2
不会进入循环
所以在此处处理
如果字符串1中含有字符串2的一个值,返回1*/
if
var_element
=
var_tmp2
then
result
:=
'1';
return(result);
end
if;
end
loop;
return(result);
end
f_intellect_first_sales_prov;
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
爱普生ME100不能打印 想去锦州西餐厅吃饭,环境好能拍照的,我主要是想拍照。。。食物很精致... Ipad Air连接电脑后itunes不显示设备 SuperJunior-it's you歌词 super junior lt's you的歌词翻译成中文? ...没钱,出来26了,究竟该不该去当兵?退役以后找工作 高中毕业生去入伍了没有考大学,请问退伍还可以继续升学历吗?有什么途径... 什么是免漆家具? 家里用免漆板打家具需多长时间好住进去 脐带血干细胞移植介绍 为什么我不加群只能看见管理员和群主看不到群成员 请教:公积金按月划拨的问题 SQL 特定字符串分割 公积金按份额划转 Split(SQL) 住房公积金划拨需要提供的材料,要满足什么条件 sql分割字符串查询,分组统计 土地使用证上写个划拨是什么意思?可以用于公积金贷款不? SQL字符串拆分的问题 sql怎么实现有c#里的spilt拆分字符串的方法啊 如何住房公积金自动划拨 sql 字符串拆分?? 公积金中心资金划拨完成,还差银行放款是不是说明贷款已经批下来了,求专家指点,谢谢了 oracle 如何用sql实现split功能 办理每年公积金自动划拨,需要些什么手续 SQL拆分逗号分隔的字符串 公积金资金划拨中能离职么? sql如何根据隔符分割字符串? 合肥二手房买卖公积金组合贷款,已到资金划拨阶段还要多久拿到放款呢 sql查询里 怎么拆分字符串(按“/”拆分) 陶特里我的红包,不想要上边钱少的怎么能删掉 我问下怎么在没有加入qq群的情况下看到群内所有成员 再sql中如何把一个字符串按字符分解比如@m=‘abc’分解以后变成‘a... 比如没加入该群,想知道群里多少人怎么查? sql中的split SQL如何根据符号截取字符串 SQL 如何把字符串拆分按固定值插入到表里? 不加入QQ群如何查看群成员资料 sql如何将一条内容包含空格的记录拆分成多条记录 qq不加群,可以提取里面的群成员吗 吉利远景X3怎么样?小毛病多吗? 没有加入的QQ群,怎么才能看到里面的全体成员? 智达x3发动机问题多吗,1.5T? 如何不加群却能查看群成员 淘宝店铺红包误删还能恢复吗? 知道群号码,不加入该群,有什么办法能看到群里成员名单嘛? 宝马x3有什么毛病 如何不加入QQ群查看群成员?? 东风景逸x3质量怎么样??? 远景X3使用中出现问题最多的是什么?