我目前有这样的查询(我简化为最大值):
SELECT d.id_doc, v.column1, t.label
FROM version v INNER JOIN person p USING(id_person),
document d INNER JOIN type t USING(id_type)
WHERE d.id_doc = v.id_doc
AND ... ;
我想知道如何用" real"替换WHERE语句? JOIN。
答案 0 :(得分:1)
尝试这种方式:
SELECT d.id_doc,
v.column1,
t.label
FROM version v
INNER JOIN person p
USING (id_person)
INNER JOIN document d
ON d.id_doc = v.id_doc
-- or you can use also
-- USING (id_doc)
-- if it's present only in d and v tables
INNER JOIN type t
USING (id_type)
WHERE ... ;
答案 1 :(得分:0)
应该只是:
SELECT d.id_doc, v.column1, t.label
FROM version v INNER JOIN person p USING(id_person)
INNER JOIN document d USING(id_doc)
INNER JOIN type t USING(id_type)
如果这不起作用,请告诉我们您正在使用的SQL平台,SQL Server,Oracle,MYSQL?
在几乎所有平台上都可以使用:
INNER JOIN document d on v.id_doc = d.id_doc
。