在SQLite iPhone中join查询
我有两个表Visits
和Labs
访问有这些字段: id
, patientID
实验室有这些字段: id
, VisitID
And Visit.id = Labs.VisitID
我想得到一个病人的所有旧的实验室报告。 但在实验室表中,我没有patientID
字段,所以为此我需要使用visitID
字段,使用它可以连接到Visit表,在那里我有patientID
因此,现在使用visitID
(一个共同的领域)我想找出病人的所有旧的实验室报告
现在我想要得到一个病人的所有实验室(我知道patientID
)
任何人都可以build议我join这个查询?
这是一个简单的INNER JOIN
,对吗?
SELECT labs.* FROM labs INNER JOIN visit ON visit.id = labs.visitID AND patientID = ?
或者你可以做一个子select:
SELECT labs.* FROM labs WHERE visitID IN (SELECT visit.id FROM visit WHERE patientID = ?)