在Postgresql v.9.6中使用条件表达式中的正则表达式

时间:2017-08-17 11:39:22

标签: sql postgresql

我有一个表格,其中我用'#34; col"包含字符值。我想提取一个列,以便在列#34; col"以' 01',' 02'开头或者' 03'该列将具有值"是"否则"不"。我尝试使用以下代码,但无法使用它。

SELECT
CASE WHEN col ~ '^(01|02|03)' THEN 'yes'
ELSE 'no' END
FROM table;

我知道一种解决方案是以下列方式使用LIKE运算符,但我正在寻找一种更紧凑的方法来解决这个问题。

SELECT
CASE WHEN col LIKE '01%' THEN 'yes'
WHEN col LIKE '02%' THEN 'yes'
WHEN col LIKE '03%' THEN 'yes'
ELSE 'no' END
FROM table;

任何解决方案,即使没有正则表达,也会非常有用。

谢谢//亨利

0 个答案:

没有答案