如何从两个不同的表中获取记录

WAQ

我有两个数据库表的1 to M关系如下

CaseMaster (caseId, case#, title, ....)

CaseStages (stageId, caseId, stageName, ...., lawrName,...)

上述关系意味着每个案件都经过多个阶段(初步、上诉、执行等)。在每个阶段,他们可以不同或没有律师。我想列出在任何阶段从未有过律师的所有案件(不是阶段)。

我尝试使用group bycaseId 上的语句执行此操作,但不知道如何仅获取那些从未有过律师的案例。

在此处输入图片说明

妓女

您可以使用WHERE NOT EXISTS如下方式编写查询

SELECT cm.caseid, 
       cm.[case#], 
       cm.title 
FROM   casemaster cm 
WHERE  NOT EXISTS (SELECT 1 
                   FROM   casestages cs 
                   WHERE  cs.caseid = cm.caseid 
                          AND cs.lawyername IS NOT NULL) 

如果您真的想使用GROUP BY,可以按照以下方式完成。

select cm.caseid,cm.title
from CaseMaster cm
inner join CaseStages cs on cs.caseid=cm.caseid
group by cm.caseid,cm.title
having sum(case when cs.lawyerName is null then 0 else 1 end)=0

在线演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

SQL查询从两个表中获取不同的记录

如何从laravel5.2中的两个不同表中获取记录

如何从SQL中的两个表获取记录

如何从两个不同的表中获取两个不同列的计数

如何从两个不同的表中获取数据(无重复记录)?两个表都有共同的价值

如何从同一SQL中的两个不同表中获取两个值

MySQL在两个表之间获取不同的记录

如何根据两个不同列的日期获取交叉连接表的唯一记录?

处理两个不同的表时如何从表中删除记录

如何从其他两个表中不存在的表中获取*记录

PHP & MYSQL:在两个不同的表中插入记录

如何从mongo中的两个不同集合中获取匹配的记录

如何从两个不同的表中获取两个不同列的总和并将它们分组

从SQL中的两个表中获取记录数

如何从与 FK 链接的两个不同表中删除记录?SQL

MongoDB如何从猫鼬的两个不同的集合中获取所有匹配的记录

mongo->如何从两个不同的集合中按datetime desc顺序获取记录

在mysql中的两个表上获取记录匹配

获取两个联接表中的相关记录数

从两个相互关联的表中获取记录-symfony

从两个表中获取最新记录

如何从Hive中的两个表中获取不匹配的记录?

如何在两个日期之间从Sql中的表中获取记录

如何通过一个输入从两个不同的表中获取结果

如何在Laravel中使用Api从两个表中获取所有记录

Doctrine:如何从具有不同子句的两个表中获取两个实体的对象?

如何从SQL Server中的两个表中获取不同的行

如何比较两个不同表中的两列

从两个不同的表中获取通用数据