如果字符串包含Postgresql SELECT

前端之家收集整理的这篇文章主要介绍了如果字符串包含Postgresql SELECT前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我有一个在我的Postgresql
TAG_TABLE
==========================
id            tag_name       
--------------------------
1             aaa
2             bbb
3             ccc

为了简化我的问题,
当一个字符串“aaaaaaaa”包含’tag_name’时,我想要做的是从TAG_TABLE中选择’id’。
所以理想情况下,应该只返回“1”,这是标签名称“aaa”的ID

这是我到目前为止所做的

SELECT id FROM TAG_TABLE WHERE 'aaaaaaaaaaa' LIKE '%tag_name%'

但是显然,这不起作用,因为postgres认为’%tag_name%’是指包含子字符串’tag_name’而不是该列下的实际数据值的模式。

如何将tag_name传递给模式?

你应该在引号之外使用’tag_name’然后将其解释为记录的一个字段。使用’||’连接与字面百分号:
SELECT id FROM TAG_TABLE WHERE 'aaaaaaaa' LIKE '%' || tag_name || '%';

猜你在找的Postgre SQL相关文章