weixin_43128703 2022-08-29 17:40 采纳率: 25%
浏览 24

oracle查询,筛选条件多个且重复字符

一张表里有字段a,第一条数据a的值是“2,32,22”,第二条数据a的值是“32,22”,第三条数据a的值是“2”,第四条数据a为32我现在想写个sql,a字段作为筛选条件,值为2,怎样才能筛选出第一条和第三条数据

  • 写回答

1条回答 默认 最新

  • honestman_ 2022-08-29 17:51
    关注

    你的问题可以分解为先把a字段按照逗号拆分,然后再做判断就好,a字段按照逗号拆分:

     
    ALTER FUNCTION [dbo].[cutStr]
    (
    @s varchar(8000), --要区分的字段
    @pos int, --要获取的数据项的位置
    @split varchar(10) --数据分隔符
    )RETURNS varchar(1000)
    AS
    BEGIN
    IF @s IS NULL RETURN(NULL)
    DECLARE @splitlen int
    SELECT @splitlen=LEN(@split+'a')-2
    WHILE @pos>1 AND CHARINDEX(@split,@s+@split)>0
    SELECT @pos=@pos-1,
    @s=STUFF(@s,1,CHARINDEX(@split,@s+@split)+@splitlen,' ')
     
    RETURN(ISNULL(LEFT(@s,CHARINDEX(@split,@s+@split)-1),' ')) 
    end
    
    
    评论

报告相同问题?

问题事件

  • 创建了问题 8月29日

悬赏问题

  • ¥15 做一个简单项目,用Python分析共享单车的数据
  • ¥20 在使用CESM2.2.0模型进行case.submit过程中出现如下错误(关键词-Map)
  • ¥15 有办法改变通过wifi进入的网站的设置吗
  • ¥15 所以到底怎么算!算到凌晨五点都算不出来!
  • ¥15 label_studio
  • ¥15 请教如何phython发邮件
  • ¥15 linux系统安装问题
  • ¥15 路径规划如何采用矢量法让他们尽量在一个方向
  • ¥15 crypto 一道rsa解密题
  • ¥15 survIDINRI已将生存时间转为数值变量,仍错误 Time variable is not numeric。