簡體   English   中英

MySQL從兩個表和不同的結構中選擇數據

[英]mysql select data from two tables and different structure

嗨,我正在用php / mysql建立一種議程/網站。 該議程按日期排列了公共活動和用戶的個人筆記。 我需要從數據庫中的事件表加載所有事件,並從注釋表中加載注釋。 但是那兩個表的結構完全不同,它們只有一個相同的字段:DATETIME。

我該如何按日期分類公共活動和個人筆記?

請幫幫我! =)謝謝盧卡

對兩個查詢使用UNION ALL 每個表的查詢將在另一個表的所有列中僅包含NULL 例如:

SELECT  'event' as type,
        datetime,
        location,
        organizer,
        NULL as notes
FROM    events
UNION
ALL
SELECT  'user_note',
        datetime,
        NULL,
        NULL,
        notes
FROM    user_notes
ORDER
BY      datetime DESC

類型字段可以是字符串,也可以是整數,以輕松地區分行來自哪個表。

根據OP注釋改善Don的答案,您可以添加一列以了解該行所在的表。

SELECT  'events' As Tbl,
        datetime,
        location,
        organizer,
        NULL as notes
FROM    events
UNION
ALL
SELECT  'user_notes' As Tbl,
        datetime,
        NULL,
        NULL,
        notes
FROM    user_notes
ORDER
BY      datetime DESC

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM