postgresql - PostgreSQL - 如何匹配列具有逗号分隔值的表中的值
问题描述
我有一个包含以下字段值的表:
我想做一个select
可以匹配此关键字列中的值的地方。例如:
SELECT templateid FROM public.templates WHERE keyword='Yes'
我不想使用LIKE
,因为如果逗号分隔的值之一是,Yessy
那么我将得到一个返回,这是不正确的。
它必须与逗号分隔值之一完全匹配。
有什么线索吗?
解决方案
您可以将字符串转换为数组:
SELECT templateid
FROM public.templates
WHERE 'Yes' = any(string_to_array(keyword, ','))
推荐阅读
- javascript - 如何使 javascript 重新确认正在点击测验应用程序的正确答案?
- python - 我收到此错误消息:无法根据规则“安全”将数组数据从 dtype('O') 转换为 dtype('float64')
- reactjs - useSelector 和 reselect ,哪一个对性能有益
- c# - 在没有身份的 ASP.NET Core 中配置 Twitter 外部身份验证
- sql - 计算满足特定条件的 postgreSQL 表中的项目
- json - 如何在 Angular 中从 xml2js 访问 JSON 对象?
- c++ - 在新表达式中抛出构造函数?
- android - Nd4j (Deeplearning4J) 是否太大而无法在 Android 移动应用程序中实际使用?
- angular - 在不打开新选项卡/窗口的情况下提交表单(Angular)
- ios - 使用正确的版本自动安装 CocoaPods