postgresql - 检查字符串是否是数组之一
问题描述
如果该项目存在于数组中,我想添加一个where条件,如何制作这个条件语句?
SELECT
*
FROM
table
WHERE
id = 'XX'
AND
tag in {'one', 'two', 'three'};
解决方案
您快到了!只需替换{
为(
.
让我们先创建表来测试:
create table test(
id varchar(2),
tag varchar(10)
);
插入一些值:
insert into test(id, tag) values ('XX', 'one'), ('YY', 'two'), ('XX', 'three'), ('XX', 'four');
执行您的查询:
SELECT
*
FROM
test
WHERE
id = 'XX'
AND
tag in ('one', 'two', 'three');
您应该看到如下结果:
id|tag |
--+-----+
XX|one |
XX|three|
推荐阅读
- python - 如何将两列的平均值分组在另一列-熊猫下
- raspberry-pi - 让子 gmail 帐户在 Chromium 上工作
- intellij-idea - 应用代码格式化时,如何查看 IntelliJ 所做的实际更改?
- c# - 与 TASK 并行运行
- python - 如何将随机 TensorFlow 张量与标量相乘?
- php - fopen:无法打开流:没有这样的文件或目录 - 但文件/目录存在
- wpf - WPF 模糊不透明蒙版和缩放布局变换
- html - 当其他元素的样式完全相同时,Img 会被拉伸吗?
- php - 使用 Eloquent 在 Laravel 中使用 where 子句访问嵌套的相关对象
- bash - 如何在bash中检查变量是否为数字