转换多个逗号分隔值

时间:2016-04-05 10:41:41

标签: mysql amazon-redshift psql

我正在我的桌子上运行以下 REDSHIFT 查询 -

SELECT a,b,c
FROM table
WHERE a in( 303823703001,303823719403,303823675303);

我收到以下错误 -

  

(null)类型字符变化且bigint无法匹配

所以我试过这个 -

SELECT a,b,c
FROM table
WHERE a::BIGINT in( 303823703001,303823719403,303823675303);

但是这不起作用,因为列'a'是VARCHAR类型并包含可能包含字母的值。

所以我试过这个 -

SELECT a,b,c
FROM table
WHERE a in( 303823703001::VARCHAR,303823719403::VARCHAR,303823675303::VARCHAR);

哪个有效!!

但我的 ISSUE 是我可能有大约6000个逗号分隔的数字 因此,查询将变得非常臃肿 我希望以更简单的方式将所有逗号分隔的数字转换为VARCHAR。
类似VARCHAR的东西(303823703001,303823719403,303823675303)

我得到的数字来自excel表格,这些数字不会存储在数据库中。

0 个答案:

没有答案