问答文章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

我来回答

5个回答

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

sql字段有逗号隔开,数据取值的方法。

如下参考:

1.查询数据库表的所有字段,直接使用select语句,如下图。

2.查询数据库表部分的字段,可以使用select字段命令,从数据库表中选择字段名度。

3.根据查询的条件,在where之后使用条件,从数据库表中选择字段名所在的条件。

4.使用distinct命令查询数据库字段,以记录未重复的结果,如下图所示。

5.查询数据库表数据之前有多少条,可以使用top命令,从数据库表中选择*号。

6.查询数据库表有时为了区分字段,需要回答字段名,可以用as,从数据库表中选择字段名作为字段名。

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

测试数据with table1(id,code) as (select 1,'001' union allselect 2,'001,002' union allselect 3,'001,002,003'),table2(code,name) as(select '001','数学' union allselect '002','体育' union allselect '003','美术') --用charindex和for xml path实现批量替换的功能,适用于sql server 2005及以上版本select table1.id,stuff((    select ','+table2.name from table2    where charindex(','+table2.code+',',','+table1.code+',')>0    order by table2.code    for xml path('')    ),1,1,'') as name from table1

结果:

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

--测试数据
with table1(id,code) as (
select 1,'001' union all
select 2,'001,002' union all
select 3,'001,002,003'),
table2(code,name) as(
select '001','数学' union all
select '002','体育' union all
select '003','美术')

--用charindex和for xml path实现批量替换的功能,适用于sql server 2005及以上版本
select table1.id,stuff((
select ','+table2.name from table2
where charindex(','+table2.code+',',','+table1.code+',')>0
order by table2.code
for xml path('')
),1,1,'') as name 
from table1

结果:

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

--分隔字符串
ALTER function f_splitstr(@SourceSql varchar(8000),@StrSeprate varchar(100))
returns @temp table(F1 varchar(100))
as
begin
declare @ch as varchar(100)
set @SourceSql=@SourceSql+@StrSeprate
while(@SourceSql<>'')
begin
set @ch=left(@SourceSql,charindex(',',@SourceSql,1)-1)
insert @temp values(@ch)
set @SourceSql=stuff(@SourceSql,1,charindex(',',@SourceSql,1),'')
end
return
end

GO
--模仿下面的函数 (你的需要一个表连接查询)
Create FUNCTION JoinString --合并字符串 多行合并为一行
(
@UserName varchar(50)
)
RETURNS varchar(8000)
AS
BEGIN
declare @Str varchar(8000)
set @Str = ''
select @Str = @Str +',' + ISNull(BuMenName,'') from ERPUserGuanliDept
where UserName = @UserName
if(@Str<>'')
set @Str=substring(@Str,2,len(@Str)-1)
return @Str
END
--使用时
select distinct UserName,dbo.JoinString(UserName) as DeptList from ERPUserGuanliDept

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

一样的取出来,只是取出来后是个字符串,要处理,用explode()函数分隔逗号就行了追问请问具体怎么写?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
PCR有哪些分类? 不鸣则已 一鸣惊人的三个星座 电动车加装蓝牙音箱怎么接线 怎么把QQ同步助手卸载掉?简直就是垃圾,什么没操作就直接给安装上了,怎... 怎么把QQ同步助手卸载掉?简直就是流氓软件。什么东西没经过我点‘’同 ... excel表如何将相间隔的不同两行组合在一起,成为一行? excel工作表如何对行各自组合 考科目一自己去还是驾校统一去 科目一是自己考还是在驾校 社保转移后,新单位没要转移单,只要了身份证,是不是就可以办理了 什么是社保转移 感叹号怎么打出来 百度众测刷题怎么弄啊 田螺和小龙虾可以一起养殖吗,怎么用田螺喂小龙虾,直接打碎吗? 新媒之家APP的课程怎么生成二维码分销? 平板电脑怎么在游戏登路时打感叹号 鲸打卡如何生成二维码? 至强E3 1220 这CPU怎么样,相当于同级什么CPU 如何制作二维码点名软件? 怎样鉴别葡萄酒? 码上游二维码付费课程怎么制作? 百老汇借款3000到手多少 对男人最重要的中国传统节日 中国年轻人经常过得节日有哪些?具体的时间和习俗? 哪个APP手机借款比较 有妇女节,那有没有男人的节日? 谁知道中国男人节是几号? 人教版小学三年级数学扎记三篇 谢谢!!! 360抢票王三代现在还可以使用吗 花店常用的花有哪些? 360抢票第三代怎么刷不到火车票 在家怎么把龙虾和田螺炒好吃? 键盘上感叹号 要怎么才能打出来 怎样炒香辣小龙虾和田螺才好吃? 请问龙虾会吃螺丝吗? 田螺怎么烧好吃?龙虾呢? 大多数人都爱吃小龙虾,那将田螺与小龙虾混在一起做成美食味道将会如何呢? 麻辣小龙虾做法大揭秘/怎么制作田螺好吃 田螺和小龙虾可以一起吃吗? 微课堂怎么发起 初中数学函数试题 小龙虾吃不吃田螺肉,想养 初三数学一次函数的试卷有哪些 龙虾和螺丝的做法视频 网贷还款到对公账户会被骗吗 初三数学函数 题 初三超难数学函数题目~急急急,追+++ 田螺,小龙虾可以天天吃吗 夜市炒的龙虾、田螺,为什么总是比自己在家里做的好吃,是不是加了外加剂? 初三数学题(关于函数) 夜市炒的龙虾和田螺,为什么会比家里做的好吃那么多?