Redshift中的英国邮政编码区域

时间:2016-08-16 08:38:21

标签: sql amazon-redshift postal-code

我试图使用SQL(Redshift)提取英国邮政编码的第一部分 例如, BT28 8YT 应该返回 BT - 所以基本上是前一个或两个字母字符,但它不应该返回一个数字。我发现英国Govt正则表达式有点难以合作!

到目前为止我所拥有的是什么,但我正在努力应对我应该使用的正则表达式函数,因此redshift会引发语法错误。

[Amazon]() Invalid operation: syntax error at or near "REGEXP";

SELECT 
    IF((left(orders.customer_postcode,2) REGEXP '[0-9]') = 0, left(orders.customer_postcode,2), left(orders.customer_postcode,1)) AS "orders.postcode_area"
FROM orders 

1 个答案:

答案 0 :(得分:1)

您也可以使用SIMILAR TO来执行此操作。例如,对于WC邮政编码,您可以使用:  postcode similar to 'WC[1-2][A-Z][[:space:]][A-Z0-9]{3}'等。