sql:筛选联接表

3z6pesqy  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(381)

这里我简化了我的用例:我有n.2个表:包含设备信息的dut(被测设备)和包含dut测试测量的testresults。主键uutid连接两个表:
表dut:
uutid(主键)
序列号
日期
操作员…
表测试结果:
uutid(外键)
测试名称
测试类型
测试结果…
通过内部连接,我可以通过过滤dut序列号从testresults表中获得测试细节,但是有没有办法只考虑testresult和testname值(来自testresults表)包含特定值的dut?换言之,我想选择所有引用特定dut序列号(dut表中的一个特定主键)的测试,只有当至少有一个测试名为dd“”,其结果为“123”时。
非常感谢你!

dpiehjr4

dpiehjr41#

首先必须基于uutid连接两个表,然后将条件放在where子句中。
使用一个以上的条件,你可以使用和,或。
两个条件都要实现,而一个条件要实现

select * from DUT a 
inner join TestResults
On a.UUTid = b.UUTid
where a.SerialNumber = 'XXXX' and b.TestName = 'ABC' and b.TestResult = '123'

相关问题