在WHERE子句中使用ascii值的Postgresql选择查询

时间:2016-04-25 14:05:24

标签: postgresql

我想在postgres中使用ascii键的值过滤字段。

我有一个名为location的字段,它的行数据包含' /'。我想写下我的查询并获取所有行' /'在其内容中。在这里,我只想传递' /'的ascii代码。而不是' /'本身。我是PostgreSQL的新手,不知道如何达到这个要求。请查找下面的查询我试图执行所需的结果并建议更改。

SELECT * FROM my_test_table WHERE (location LIKE '%' || convert_to('/', 'UTF8') || '%');

预期结果:当我执行上述查询时,我应该获得包含' /'的所有行。在其内容中。

提前致谢 桑托什

1 个答案:

答案 0 :(得分:2)

使用chr()功能:

SELECT * 
FROM my_test_table 
WHERE location like '%'||chr(47)||'%'

或者使用strpos()代替

SELECT * 
FROM my_test_table 
WHERE strpos(location, chr(47)) > 0;