[英]How cloud I select the jsonb[] contains one of string in array by prisma?
例如,我有如下数据集:
ID | 团体 |
---|---|
1个 | ['A'] |
2个 | ['B'] |
3个 | ['A', 'C'] |
4个 | ['B', 'D'] |
5个 | ['C'] |
6个 | ['D'] |
7 | ['A', 'B'] |
我希望选择组包含['A' | 'B']
['A' | 'B']
。 结果必须是 id [1, 2, 3, 4, 7]
。
原始 sql 呈现为(groups)::jsonb?| array['A', 'B']
(groups)::jsonb?| array['A', 'B']
。
我使用如下的 ORM 方式:
const chosen = await prisma.table.findMany({
where: {
groups: {
array_contains: ['A', 'B']
}
}
})
但结果我只得到了id:7
。
这不是我想要的...
我如何通过 ORM 实现我的理论?
解决了:
使用 OR 联合条件。
const chosen = await prisma.table.findMany({
where: {
OR: [
{
groups: {
array_contains: ['A']
}
},
{
groups: {
array_contains: ['B']
}
},
]
}
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.