mysql - 如何计算 id 的 id 有其他列的值

标签 mysql sql sql-server

我有一个这样的表:

ID     Diagnosis   
---------------
1       d1
1       d2
1       d3         
2       d1
2       d3
2       d4
3       d1
3       d2 

我想计算同时具有 d1d2 的唯一 ID

像这样的期望输出

total    
------
2

如何编写 SQL 代码来实现这一点?

最佳答案

您可以使用几个 in 条件:

SELECT COUNT(DISTINCT id)
FROM   my_table
WHERE  id IN (SELECT id FROM my_table WHERE diagnosis = 'id1') AND
       id IN (SELECT id FROM my_table WHERE diagnosis = 'id2') 

关于mysql - 如何计算 id 的 id 有其他列的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26400414/

相关文章:

mysql - SQL 数据库调查数据的平均评分

sql - Pyspark Dataframes 作为 View

sql-server - 如何为每个组选择前 x 条记录

sql - 按别名分组

mysql - 使用数学运算符在 mysql 列上设置别名

sql-server - DB Audit Trail 的最佳实现是什么?

java - 从 jTable 更新 SQL Server 表

php - 如何在 PHP 中检查列值是否为 null 或 0?

MySQL:如何选择本周的记录?

mysql - 在 SQL 查询中排除喜欢和不喜欢的页面?