[英]Best way to join this query
我有以下表格和數據:
Tables
-----------
CREATE TABLE primarys
( primaryid BIGINT(20) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (primaryid));
CREATE TABLE patients
( primaryid BIGINT(20) NOT NULL,
patientid BIGINT(20),
patientName VARCHAR(50),
PRIMARY KEY (primaryid));
CREATE TABLE patientvisit
( primaryid BIGINT(20) NOT NULL,
visitid BIGINT(20),
visitdate DATE,
PRIMARY KEY (primaryid));
Data
---------
INSERT INTO primarys values (1);
INSERT INTO primarys values (7286);
INSERT INTO primarys values (7287);
INSERT INTO patients VALUES (1,'1','John');
INSERT INTO patients VALUES (7286,'1', '');
INSERT INTO patients VALUES (7287,'1', '');
INSERT INTO patientvisit VALUES (7286,'1','1997-12-18');
INSERT INTO patientvisit VALUES (7287,'2','1998-02-25');
我需要編寫一個查詢,輸出如下數據:
primaryid | patientid | patientname | visit | visitdate
------------------------------------------------
7286 | 1 | John | 1 | 1997-12-18
7287 | 1 | John | 2 | 1998-02-25
我可以弄清楚如何使用外部聯接和子查詢來執行此操作,這些聯接工作正常,但是當我開始添加大數據集時,mysql的性能開始顯着下降。
如果有人可以提出最優化的方法來查詢這些數據並獲得所需的輸出,我將不勝感激。
謝謝
對於您在問題中顯示的特定值,此查詢即可。
SELECT q2.primaryid, q_1, q_2, q_4, q_5 FROM questions_101_200 q2
CROSS JOIN questions_1_100
但是您的數據和結構對我來說沒有多大意義。 如果您詳細說明您要做什么,我可以給您一個更有意義的答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.