Redshift - отфильтровать значения без запятой в строке - PullRequest
0 голосов
/ 29 августа 2018

У меня есть столбец, который имеет значения с запятыми (,). Я пытаюсь отфильтровать строки без запятой.

Ниже приведен пример моего набора данных

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 вернет только идентификаторы (1,3), поскольку они не имеют запятой в столбце product_list . Может ли кто-нибудь помочь мне с тем, как я могу отфильтровать вышеуказанный набор данных.

Я использую Redshift DB.

Ответы [ 2 ]

0 голосов
/ 29 августа 2018

Несколько способов сделать это, и один уже предложен, тогда другой может быть:

select * from test where len(product_list)-len(REPLACE(product_list,',',''))<1;
0 голосов
/ 29 августа 2018

вы можете использовать как оператор

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
...