gpt4 book ai didi

mysql 仅选择未分配给任何其他值的唯一值

转载 作者:行者123 更新时间:2023-11-28 23:33:11 28 4
gpt4 key购买 nike

我的数据库看起来像这样

id document_id resource_id language filename
1 11 120 English abc
2 13 120 German ghy
3 56 120 Norway hyu
4 56 156 Norway hyu
5 89 134 Hindi uiy
6 90 120 English qwer

在这里我想获取 resource_id 120 的所有值。所以我可以像这样查询

SELECT * FROM `table` WHERE resource_id = 120

但是正如您在表中看到的那样,只有一列用于 document_id,如果您仔细检查,您会发现 document_id 56 分配给了两个资源。一个用于 120,另一个用于 156。有人可以告诉我如何在 mysql 子查询中检查它吗。

所以我的输出将是它只显示 resource_id 120 的所有数据。如果任何其他资源分配有任何已与 resource_id 120 共享的 document_id,它将不会显示。因此应仅显示 120 个 resource_id 的唯一数据。

到目前为止,我的查询是这样的

SELECT * 
FROM `table`
WHERE resource_id = 120
AND `document_id` IN("SELECT `id` FROM `table` WHERE `resource_id` <> 120 ")

那么有人可以告诉我如何获得值(value)吗?任何帮助和建议都将非常感激。谢谢

最佳答案

SELECT
*
FROM
`table`
WHERE
resource_id = 120
AND document_id NOT IN (SELECT document_id FROM `table` WHERE resource_id <> 120);

关于mysql 仅选择未分配给任何其他值的唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36718070/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com