数据库表字段为 key,name 其中key不重复,一个name对应多个key,现在给定两个oem,(同一个name要同时包含这两个key)要查出怎么查出同时包含这两个key的所有name呢?
答案来源于chatGPT
SELECT name FROM your_table WHERE key IN ('key1', 'key2') GROUP BY name HAVING COUNT(DISTINCT key) = 2;
在上述示例中,假设你的表名为 your_table,字段名为 key 和 name。你需要将 'key1' 和 'key2' 替换为你要查找的两个具体的 key 值。
这个查询使用了 IN 条件来匹配给定的两个 key 值。GROUP BY 子句按照 name 进行分组,而 HAVING 子句则用于筛选出同时包含两个 key 的 name。COUNT(DISTINCT key) 表示对每个分组中的唯一 key 数进行计数,如果计数结果等于 2,说明该 name 同时包含了两个 key。
请注意,上述示例是一种常见的查询方法,但具体实现方式可能因数据库类型和表结构而有所不同。确保根据你的实际情况进行适当的调整和修改。
答案来源于chatGPT
SELECT name
FROM your_table
WHERE key IN ('key1', 'key2')
GROUP BY name
HAVING COUNT(DISTINCT key) = 2;
在上述示例中,假设你的表名为 your_table,字段名为 key 和 name。你需要将 'key1' 和 'key2' 替换为你要查找的两个具体的 key 值。
这个查询使用了 IN 条件来匹配给定的两个 key 值。GROUP BY 子句按照 name 进行分组,而 HAVING 子句则用于筛选出同时包含两个 key 的 name。COUNT(DISTINCT key) 表示对每个分组中的唯一 key 数进行计数,如果计数结果等于 2,说明该 name 同时包含了两个 key。
请注意,上述示例是一种常见的查询方法,但具体实现方式可能因数据库类型和表结构而有所不同。确保根据你的实际情况进行适当的调整和修改。