首先,如果这是一个重复的问题,我们深表歉意。我已尽力搜索但没有成功,而且我什至无法用关键字正确表达我的问题!
我需要编写一个 Postgres 查询,它将查找不包含任何字母但在正则表达式中给出的所有行。我已经发现我需要将 LIKE 语句与正则表达式一起使用。但我不知道如何在适当的条件下变白。
示例:字母为“A”、“P”、“P”、“L”、“E”。
查询应返回
- 应用程序
- PAL
- 圈数
- 苹果
查询不应返回
- PELT
- P我E
- 等等...
有什么想法吗?
最佳答案
您可以在 postgresql 中使用 ~
运算符代替 LIKE 来表示正则表达式,您的正则表达式应如下所示:
SELECT * FROM tablename WHERE col ~ '^[APLE]+$';
表示匹配[APLE]
组中的一个或多个字符
所以它可以返回:
APP
PAL
LAP
APPLE
而不是:
PELT
PIE
关于sql - 获取不包含任何字母但在正则表达式 Postgres 中给出的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46274668/