2012-04-16 22 views
1

我創建一個人事數據庫結果,並有涉及用戶的多個表是包括像體檢,護照,接種疫苗,會員資格等MySQL的獲取從基於日期多個表

每個表中包含我想查詢所有表格的到期記錄。基本上我想有一個項目列表,要在一定時間到期,是這樣的:

John - Passport expires in 1 month 
Emma - Vaccination expires in 1 month 
Carol - Vaccination expires in 3 weeks 
Josh - Medical expires in 2 weeks 
James - Passport expires in 3 days 

什麼是做到這一點的最好辦法,可以把它以某種方式在單個查詢做到嗎?

在此先感謝

+1

您是否正在尋找一個「備忘錄」,說什麼都會即將到期(以便主在哪裏一個約會)?或者你是否在尋找某人顯示每件物品到期的事情?你能否提供一些表結構的概念? – geoB 2012-04-16 14:46:28

+0

我正在尋找下面的帖子。抱歉,我的解釋從來都不是很好,它是任何人都能理解的。無論如何感謝您的時間。 – Sean 2012-04-16 14:58:24

回答

0

它可以在一個單一的查詢使用UNION來完成:

(SELECT name, 'passport', expiry_date FROM table_passport WHERE ...) 
UNION ALL 
(SELECT name, 'vaccination', expiry_date FROM table_vaccinations WHERE ...) 
UNION ALL 
(SELECT name, 'medical', expiry_date FROM table_medical WHERE ...) 
ORDER BY name; 
+0

這就是它,謝謝。 – Sean 2012-04-16 14:57:33