我现在有两个表,我正在尝试创建一个包含列Patient_id和Drug_name的视图,其中包括每个患者可能对其过敏的药物集。包括报告过敏表中的药物,以及从未知过敏表中推断为过敏的其他药物。
CREATE TABLE repostedallergies (
patient_id CHAR(5),
drug_name CHAR(15),
PRIMARY KEY (patient_id, drug_name)
)
CREATE TABLE inferredallergies (
alg CHAR(15),
canbe_alg CHAR(15),
PRIMARY KEY (alg, canbe_alg)
)
我试了好几次,但都不管用
CREATE VIEW allergies AS
SELECT DISTINCT r.patient_id, r.drug_name
FROM reportedallergies r, inferredallergies i
WHERE r.drug_name IN (SELECT canbe_alg
FROM inferredallergies i);
是否有其他方法可以将INFERREDREASTRIGGY表中的DRANSAGE_NAME添加到视图中。
2条答案
按热度按时间qv7cva1a1#
ubof19bj2#
FROM
子句中使用逗号。始终使用正确的显式JOIN
语法。永远!在您的例子中,我还认为您需要一个
UNION ALL
来组合这两个表中的信息:如果需要删除重复项,请将
UNION ALL
替换为UNION
。