我想写一个postgress sql查询,在这里我想选择所有行,其中一列必须包含以下格式的字符串,我无法构造Postgress的正则表达式,因为这个数据库是新的POSTGRES SQL查询找到所有有一列的行包含数字格式如11位数字 - 4位数
一列包含像PRF这样的字符串:12345678901-1234像这样的列值存在,所以将一个sql查询写入选择所有具有这种格式的列值的行,这里PRF:是常量,它永远不会改变唯一的变化值是字符串后面:符号,有人可以帮我在这里。
我想写一个postgress sql查询,在这里我想选择所有行,其中一列必须包含以下格式的字符串,我无法构造Postgress的正则表达式,因为这个数据库是新的POSTGRES SQL查询找到所有有一列的行包含数字格式如11位数字 - 4位数
一列包含像PRF这样的字符串:12345678901-1234像这样的列值存在,所以将一个sql查询写入选择所有具有这种格式的列值的行,这里PRF:是常量,它永远不会改变唯一的变化值是字符串后面:符号,有人可以帮我在这里。
SELECT * FROM your_table WHERE your_column ~ '^[A-Z]{3}:\d{11}-\d{4}$';
~
波浪号用于正则表达式的评估,你可以评估该表达式匹配您的需求here
@eorge Daramouskas,感谢它的解决方案。我还有一个疑问,如果该列包含纯json,而不是文本行,那么该怎么办?因为我在另一个存储json的列上试了这个,请有任何想法 – Bravo