代码之家  ›  专栏  ›  技术社区  ›  dark horse

红移-过滤掉行中没有逗号的值

  •  0
  • dark horse  · 技术社区  · 6 年前

    我有一个列,它的值带有逗号(,)。我试图过滤掉没有逗号的行。

    id,name,product_list
    1,kevin,prod_a
    2,scott,prod_b,prod_c
    3,tim,prod_a
    4,julie,prod_a,prod_e
    

    我希望SQL只返回id(1,3),因为它们的内部没有逗号 列。有谁能帮我过滤上面的数据集吗。

    我用的是红移数据库。

    2 回复  |  直到 6 年前
        1
  •  1
  •   Nav    6 年前

    有多种方法可以做到这一点,其中一种方法已经提出,另一种方法可以是:

    select * from test where len(product_list)-len(REPLACE(product_list,',',''))<1;
    
        2
  •  5
  •   Zaynul Abadin Tuhin    6 年前

    select * from table1 where product_list NOT LIKE '%,%'
    

    http://sqlfiddle.com/#!9/a081d/1

    id  name    productlist
    1   kevin   prod_a
    3   tim     prod_a