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

sql查询以逗号分隔的字段

发布网友 发布时间:2022-04-07 18:24

我来回答

6个回答

热心网友 时间:2022-04-07 19:53

通过测试没有问题,应该是你的拼接语法错了
create table #a
(
aa varchar(50)
)
insert #a values('2,3,9,12,10,')
insert #a values('5,15,13,3,2,')
select * from #a where aa like '%2%'
drop table #a

看了上面的回答,原来要排除12这种可能性啊,也很简单,随手写的测试语句可以参考下
create table #a
(
aa varchar(50)
)
insert #a values('2,3,9,12,10,')
insert #a values('5,15,13,3,2,')
insert #a values('5,35,3,3,12,')
select * from #a where ','+aa like '%,2,%'
drop table #a

热心网友 时间:2022-04-07 21:11

先建一个函数,将字符串切割成一个个单独的数字

--自定义函数.Split
Create FUNCTION [dbo].[Split]
(
@Expression varchar(8000)
, @Delimiter varchar(10)
)
RETURNS @Values table(Value varchar(2000))
AS
BEGIN
declare @i int, @dl int, @l int, @value varchar(2000)
select @i = charindex(@Delimiter, @Expression), @dl = len(@Delimiter), @l = len(@Expression)

while (@i > 0)
begin
select @value = ltrim(rtrim(left(@Expression, @i - 1))), @Expression = substring(@Expression, @i + 1, @l)
insert into @Values (value) values(@value)
select @i = charindex(@Delimiter, @Expression), @l = len(@Expression)
end

set @Value = rtrim(ltrim(@Expression))
if @Value <> '' insert into @Values (Value) values(@Value)

return
END

再查出你要的数据
select * from dbo.Split('2,3,9,12,10,',')
where Value like '%2%'

热心网友 时间:2022-04-07 22:46

select * from table where AA like '%,2,%' or substring(AA, 1, 2)="2," or substring(AA, len(AA)-1,2)=',2'

热心网友 时间:2022-04-08 00:37

select * from table where AA like '%,2,%' or AA like '2,%' or AA like '%,2'

热心网友 时间:2022-04-08 02:45

select * from table where AA like '%2%'
这样不可以么?
为啥感觉你的语句格式很奇怪。。追问你这样会把有带2的都取出来了,像12.也会被取出来

追答噢,酱紫啊。。
好像很复杂的样子。。如果要用C#查一个类似这种字符串的话,需要把每一位读出来,然后找到2,然后判断它的上一位和下一位只能为逗号或什么都没有。。SQL就不会了。。
话说为什么要把这种数据存到一个字段里啊。。。

楼下的楼下和楼下的楼下的楼下的语句貌似是可行的

热心网友 时间:2022-04-08 05:10

说的明白点 为什么不取第二条数据 第二条数据里也有2啊追问我要取出2条数据
只要里面有2的

追答--创建测试数据

create table #a(aa varchar(100))
insert into #a values('2,34,54,32,7')
insert into #a values('54,5,35,64,2')
insert into #a values('55,2,345,455,3')
insert into #a values('3,45,63,6,3')
insert into #a values('5,3,5,54,7,5')
--实现部分
select * from #a where aa like '2,%' or aa like'%,2,%' or aa like '%,2'

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 个人电脑的中央处理器主要有哪两大公司生产? cpu的生产厂家有那些 目前微型计算机的CPU生产商主要有那几个公司? 手机总是显示无服务怎么回事?m3 我的电脑是i5七代的cpu八个g的内存,但是我觉的电脑特别卡是什么原因, 处理器英特尔7代酷睿i5咋样?配上七彩虹GTX1050TI 4GD5能玩啥样的大型游戏? 给出位错运动的点阵主力与晶体结构的关系式,说明为什么晶体滑移通常发生在原子最密排的晶面和晶向。 电子得失守恒后再配原子守恒则电子得失守恒不会被破坏吗? 目前市场上提供微型计算机cup的两个主要公司是? 苯酚的所有原子是否在同一平面 高中配平化学方程式的方法 在同一直线上最多有几个原子,可能在同一平面原子最多 苹果13怎么插8p耳机连不上 怎样判断分子中有几个碳原子共平面 tcl电视65D10不能语音开机是怎么回事? 如何数最多共平面原子 布拉格反射原理 如何通俗解释布拉格定律? 什么是布拉格平面 三国演义68 69 70 回概括,急用!!! 猎豹浏览器文件怎么另存为,就是想把打印预览页面转成Word文档?谢谢! 网页的打印预览可以复制到word里面,或者用其它办法保存到其它电脑打印吗? 给牛年的孩子取个小名 谢谢各位干爹干妈咯 怎么把打印预览里的东西复制到word里面?我想带出去打印,急 vb如何将数据保存到word中,并打印 导出excel或者word的打印预览 有什么号的办法,直接可以把要打印的东西打印成WORD或EXCEL文件 在Word中,打印预览时修改的文档内容不能保存? 我的word保存在了打印预览状态(多页预览),怎么恢复呀! 别人给保存了一个打印预览模式下的word文档,用wps打开如下图,如何编辑修改 丰田卡罗拉能跑滴滴专车吗? 滴滴出行司机版,刚开始做,就可以直接做专车司机吗 红旗H5可以跑滴滴专车吗? 凯迪拉克xt4可以跑滴滴专车吗 请问大佬有BB Flashback Pro 5注册机 V2021 最新版软件百度云资源吗 bbflashback可以长时间录制吗?为什么我录制了两个小时的视频,点击结束录制的时候软件就没有反应了,是因 下载孟虎视频APP软件? 下载什么软件可以看(www.bb311.com)里的视频? 视频录制软件最好用的是哪款 视频处理软件哪个比较好