有什么方法可以将逗号分隔的文本值转换为列表,以便我可以在 SQL 中将其与“IN”一起使用?我为此使用了 PostgreSQL。
前任。:
select location from tbl where
location in (replace(replace(replace('[Location].[SG],[Location].[PH]', ',[Location].[', ','''), '[Location].[', ''''), ']',''''))
这个查询:
select (replace(replace(replace('[Location].[SG],[Location].[PH]', ',[Location].[', ','''), '[Location].[', ''''), ']',''''))
产生'SG','PH'
我想产生这个查询:
select location from tbl where location in ('SG','PH')
当我执行第一个查询时没有返回任何内容。该表已填满位置值“SG”和“PH”。
谁能在不使用 PL/pgSQL 的情况下帮助我完成这项工作?