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

[MySQL] 如何存储 array比较合适?

发布网友 发布时间:2022-04-10 15:01

我来回答

2个回答

懂视网 时间:2022-04-10 19:22

function Get_StrArrayLength ( @str varchar(1024), --要分割的字符串 @split varchar(10) --分隔符号 ) returns int as begin declare @location int declare @start int declare @length int set @str=ltrim(rtrim(@str)) set @location=charindex(@split,@str) set @length=1 while @location<>0 begin set @start=@location+1 set @location=charindex(@split,@str,@start) set @length=@length+1 end return @length end

调用示例:select dbo.Get_StrArrayLength(‘78,1,2,3‘,‘,‘)

返回值:4

1.2. 得到数组中指定位置的元素

方法:按指定符号分割字符串,返回分割后指定索引的第几个元素,象数组一样方便

CREATE function Get_StrArrayStrOfIndex 
( 
@str varchar(1024), --要分割的字符串 
@split varchar(10), --分隔符号 
@index int --取第几个元素 
) 
returns varchar(1024) 
as 
begin 
declare @location int 
declare @start int 
declare @next int 
declare @seed int 
set @str=ltrim(rtrim(@str)) 
set @start=1 
set @next=1 
set @seed=len(@split) 
set @location=charindex(@split,@str) 
while @location<>0 and @index>@next 
begin 
set @start=@location+@seed 
set @location=charindex(@split,@str,@start) 
set @next=@next+1 
end 
if @location =0 select @location =len(@str)+1 
--这儿存在两种情况:1、字符串不存在分隔符号 2、字符串中存在分隔符号,跳出while循环后,@location为0,那默认为字符串后边有一个分隔符号。 
return substring(@str,@start,@location-@start) 
end 

调用示例:select dbo.Get_StrArrayStrOfIndex(‘8,9,4‘,‘,‘,2)

返回值:9

2.3. 结合以上两个函数,遍历数组中的元素

方法:结合上边两个函数,象数组一样遍历字符串中的元素

declare @str varchar(50) 
set @str=‘1,2,3,4,5‘ 
declare @next int 
set @next=1 
while @next<=dbo.Get_StrArrayLength(@str,‘,‘) 
begin 
print dbo.Get_StrArrayStrOfIndex(@str,‘,‘,@next) 
set @next=@next+1 
end 

调用结果:

1

2

3

4

5

MySQL中数组的存储

标签:har   arc   weight   组元   while循环   col   存储   rar   substring   

热心网友 时间:2022-04-10 16:30

[MySQL] 如何存储 array比较合适?
把数组变成字符串:比如$a=array{"12","23","34","45"};
$a="12,23,34,45"; 把这个存到数据库中就行了
读取时再用explode变成数组
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
养胃的药最好的是什么啊 婴儿积食发烧不愿吃药怎么办 板门穴位在哪个部位 手机设置放偷看的方法? 凝结水回收器生产厂家? 个人账户养老金预测公式:现有5万元,缴费20年,能领多少钱? 临沂比较有名的男装品牌 呼伦贝尔市悦动网络科技有限公司怎么样? 呼伦贝尔中汇实业有限公司怎么样? 呼伦贝尔油玉不绝电子商务有限公司怎么样? 为了详细说明图片中各个部分的名称,怎样在一个图片里插入带有箭头的指引线和数字啊???跪求 ps cs5 中怎么加标注(带引线的那种) PS在样在图片上加引线然后在引线后面加上文字 cad的文字怎么复制到excel 怎么制作引线? 在PS里怎么能才画出指引线? 如何把cad文本框中的内容到一次性复制到EXCEL? 手机支付宝充值另外一部手机话费怎么充啊 送什么给女朋友做生日礼物好呢?? 丰田花冠新车味道真心让我崩溃? 怎样才能去除啊 我丰田花冠车车内味道很大,有谁知道是什么原因? 歇后语指什么画什么? 歇后语是什么?歇字是什么意思? “歇后语”为什么叫“歇后语”呢 惯用语是指;歇后语是指 什么是歇后语/ 看解释猜成语 帮忙解释一下文言句子 “胜兵若以镒称铢,败兵若以铢称镒。” 易如反掌、必胜无疑造句 “胜兵若以镒称铢,败兵若以诔称镒。”什么意思 PS教程 怎么添加箭头实线虚引线数字位置标注 如何为图片标注尺寸 请问怎么用PS做出这样的产品引用线呢? 用淡盐水擦木地板可以吗? 用盐拖地能不黏 拖地加什么干的快 红米k20Pro尊享版插入手机卡在不关机的情况下需要打开飞行模式吗? 红米k20pro尊享版如何取消双击电源键刷卡? 红米k20pro尊享版有触控功能吗 红米k20pro尊享版手机有多屏互动吗? 老人靠卖石头供两个孙子读完大学,如何辨别奇石? 福建省东山岛的那块石头为什么被称为“风动石”和有气节的石头 中华雄鹰短文 苹果赤裸裸的绑架,数据超过200M不给下载还不能设置,你怎么看? 做梦的时候,经常梦到一个人,说明两个人在互相思念吗? PSP屏幕尺寸是多少?不是分辨率! psp 屏幕比例 PSP游戏机屏幕长宽各多少厘米? psp3000的长和宽分别是多少厘米,屏幕的又分别是多少厘米 PSP屏幕的尺寸是几寸的? PSP 索尼PSPgo的屏幕大小是多少