sql - 在列中查找非重复值
问题描述
我有一个包含3 个 id的表“ stats ” 。
ID: id_seller、id_part 和 id_proj
从这张表中,我想返回id_proj (project),它只从一个 id_seller (seller)购买。
换句话说:查询应该找到并返回值id_proj(项目),它不是从除一个卖家之外的任何人那里购买的。
在我的例子或下面的例子中,J6是唯一不卖给其他卖家的部分。所以,J6 只从 S2 购买。
我试图找到带有 Count 函数的子查询的解决方案,但无法获得正确的返回。
输出应该只是J6。
解决方案
这应该工作
select id_proj,
count(id_seller)
group by id_proj
having count(id_seller) = 1
推荐阅读
- javascript - React Hooks,如何在两个函数之间共享状态
- sql - 使用 T-SQL 为每个组查找前 25% 的客户
- python - 如何使用 argparse 将 AWS Sagemaker SM_USER_ARGS 解析为 argparse 命名空间?
- c++ - 矩阵类中的运算符重载函数有什么问题
- c# - 物品清单、库存系统、堆叠问题
- git - 当内容相同时,Git 声明文件已更改
- c# - ADODB.Recordset 到 C# 中的 JSON
- spring-batch - 在 Spring Batch 中展平列表列表的最佳方法是什么?
- ios - 有没有办法查看 WKWebView 何时可以使用 HTTPCookie?
- mysql - mysql #1054 使用 phpmyadmin 的未知列