sql - Convert comma separated string to a list -


i want pass list of int's (comma separated) field in table

ie. 1234, 2345, 3456, 4567

to in clause in where. list string (varchar), , i'm comparing int field. there way me convert list list of ints?

enterprise_id int
path field in table comma separated string

ie. 1234, 2345, 3456, 4567

select * tbl_enterprise enterprise_id in ( path ) 

my database vertica.

you can use split_part function in vertica split comma separated list rows , insert them temp table. use query achieve goal:

select * tbl_enterprice enterprice_id in ( select enterprice_id temp_table ) 

split part function: https://my.vertica.com/docs/7.1.x/html/content/authoring/sqlreferencemanual/functions/string/split_part.htm

here example of splitting string rows using split_part:

dbadmin=> select split_part('jim|tom|patrick|peng|mark|brian', '|', row_num) "user names" dbadmin->   (select row_number() on () row_num dbadmin(>           tables) row_nums dbadmin->  split_part('jim|tom|patrick|peng|mark|brian', '|', row_num) <> '';  user names ------------  jim  tom  patrick  peng  mark  brian (6 rows) 

Comments