java—如何编写查询以使用子查询从表中获取数据?

xnifntxz  于 2021-06-15  发布在  Mysql
关注(0)|答案(3)|浏览(281)

案例是我有一个就诊表和一个实验室订单表,实验室订单表用于存储带有就诊id、测试id、实验室分析物id的订单,其中测试和实验室分析物是不同的表。
现在我要找出哪个实验室的分析物没有被订购参观。为了找出我有实验室分析物id,所以我需要检查实验室订单表和实验室分析物id记录是否存在,作为回报,我希望访问。

oewdyzsn

oewdyzsn1#

谷歌吧。你会得到许多教程网站,参考任何!!
https://www.w3schools.com/sql/sql_any_all.asp
https://www.tutorialspoint.com/sql/sql-sub-queries.htm
https://www.dofactory.com/sql/subquery

sg2wtvxw

sg2wtvxw2#

1) 联接不正确,如果使用左联接,则需要指定一个on条件,当前联接不是左联接,而只是交叉联接。

select * from A a 
left join B b
on a.Id=b.Id
where a.Id=1 
and b.Id <> 5

如果没有聚合函数,groupby也将失败

s4n0splo

s4n0splo3#

SELECT LAB_ANALYTE_ID  FROM LAB_ANALYTE WHERE LAB_ANALYTE_ID NOT IN (SELECT 
LAB_ANALYTE_ID FROM LAB_ORDER)

每次将记录插入 LAB_ORDER table,安 non-null LAB_ANALYTE_ID 将为该记录生成。我们可以排除这些 LAB_ANALYTE_IDs 通过使用 NOT IN 条款。

相关问题