本学期我正在学习DBMS课程,我想确保即时通讯能够取得良好的进展并实践良好的思维,而我自己的处理查询的方法有点像分而治之 - 我将查询分解为子查询并使其查看,然后使用这些视图来简单地收集我需要的信息,总的来说,这是一个好方法吗?SQL查询,如何处理复杂的查询?
什么是替代品?
你自己的方法是什么?如果你认为这比我的更好,为什么?
例:
给出:DB:http://sqlfiddle.com/#!2/cdd98/1
(Q7)找到谁访问了与他们的保险公司相关联的所有整形外科(专业)的患者。
。
CREATE VIEW Orthos AS
SELECT d.cid,d.did
FROM Doctors d
WHERE d.speciality='Orthopedist';
CREATE VIEW OrthosPerInc AS
SELECT o.cid, COUNT(o.did) as countd4i
FROM Orthos o
GROUP BY o.cid;
CREATE VIEW OrthoVisitsPerPat AS
SELECT v.pid,COUNT(o.did) as countv4d
FROM Orthos o,Visits v,Doctors d
WHERE o.did=v.did and d.did=o.did
GROUP BY v.pid,d.cid;
SELECT p.pname,p.pid,p.cid
FROM OrthoVisitsPerPat v, OrthosPerInc i,Patient p
WHERE i.countd4i = v.countv4d and p.pid=v.pid and p.cid=i.cid
为什么近距离投票? –
既然你在学校,你应该学习现代连接语法 –
@KM或许你可以给我一个它如何完成的例子吗? –