mysql中怎么拆分以逗号隔开的字符串

mysql中怎么拆分以逗号隔开的字符串,第1张

拆分以逗号隔开的字符串,这是高级语言来处理的吧,数据库主要是存储数据的,比如php就可以这样实现:

$string = '1,2,3,4,5'

$array = explode(',',$string)

之后就得出一个数组,$array(1,2,3,4,5)

这个应该可以使用字符串拼接,你是不是这样写存储过程:

create procedure p_proc(var_in int)

begin

delete from [tableName] where [colName] in (var_in)

end

然后又这样调用:

call p_proc(1, 2, 3)

这样肯定不行,那么你可以这样:

create procedure p_proc(var_in varchar(5000))

begin

set @sql = concat("delete from [tableName] where [colName] in (", var_in, ")")

prepare stmt_exe_sql from @sql

execute stmt_exe_sql

deallocate prepare stmt_exe_sql

end

这样就相当于把(1, 2, 3)拼接成语句"delete from [tableName] where [colName] in (1, 2, 3)", 然后执行,就可以删除了。

可以用SUBSTRING_INDEX()函数在mysql中提供了一些字符串 *** 作的函数,其中SUBSTRING_INDEX(str, delim, count)str: 要处理的字符串delim: 分割符count: 计数 如果为正数,则从左开始数,如果为负数,则从右开始数


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6129680.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-15
下一篇 2023-03-15

发表评论

登录后才能评论

评论列表(0条)

保存