我有两个表,一个存储序列号 uut_build ,另一个用于属于序列号 measure_list 的测量,我正在尝试计算 measure_list 中属于唯一序列号的记录 查询#1
select id, uut_sn from uut_build where uut_sn like 'A%';
查询#2
select count(*) from measure_list as m WHERE m.uut_id = [result from query #1]
是否可以只使用一个查询语句来执行此操作?
提前致谢!
答案 0 :(得分:2)
使用:
SELECT ub.uut_sn,
COALESCE(COUNT(ml.*), 0) AS cnt
FROM UUT_BUILD ub
LEFT JOIN MEASURE_LIST ml ON ml.uut_id = ub.uut_sn
WHERE ub.uut_sn LIKE 'A%'
GROUP BY ub.uut_sn
有点不清楚哪些列链接了两个表......
这将返回所有序列号 - 如果它们在MEASURE_LIST
中没有记录,则cnt值将为零。如果您只想要一个包含MEASURE_LIST
记录的记录列表,请从我提供的查询中删除“LEFT”。