子表
SELECT t1.uname,SUM(t2.score),SUM(t3.prices)FROM test1 t1
LEFT JOIN test2 t2 ON t2.test1_id=t1.id
LEFT JOIN test3 t3 ON t3.test1_id=t1.id
GROUP BY t1.uname
结果
所以你的问题是?
查询工资在平均工资以上的 管理人员
SELECT *
FROM employees e
WHERE salary > (
SELECT AVG(salary)
FROM employees
WHERE office_id = e.office_id #著名外层查询
);
内外查询都用到了员工表,当子查询与主查询用到的时相同表时,主查询就会把每一行执行这段子查询,条件满足的行都会被返回到最终结果,这就是相关子查询
子查询练习 3
在 invoices
表中查询高于客户平均值的发票
SELECT *
FROM invoices i
WHERE invoice_total > (
SELECT AVG(invoice_total)
FROM invoices
WHERE client_id = i.client_id
);
那么重点呢!!!这两张表 需要干什么事情说清楚