我一直在嘗試在過去的幾天裏完成這個MySQL查詢,現在運行得很少。我想將這些多個表格和它們的列組合起來,然後按照它們的共同點(不是按名稱,而是按內容)排序。我有以下的數據庫表:結合多個獨特的MySQL表格並按一列排序
mb_bans:
mb_ban_records:
mb_kicks:
mb_mutes:
mb_mutes_records:
mb_warnings:
我試圖做到的是這一行中的東西:
不幸的是,我以後難倒如何將這些MySQL表組合在一起,同時將它們保存在不同的類別中 - 按每個表中的_time列排序。我會如何處理這個問題?我一直沒有成功地嘗試檢索它們。我能得到的最接近的結果是將每個列的_time列組合在一起,然後在查詢中給它一個值作爲「日期」的值,但是我無法對結果做很多工作。我仍然需要將它作爲單獨的行來調用,對嗎?我大概可以用使用fetchall但後來我將無法添加任何東西的價值..
$banq = $db->prepare('SELECT banned, banned_by, ban_reason, ban_time, ban_expires_on FROM '.BAN_TABLE.' ORDER BY ban_time DESC');
$kickq = $db->prepare('SELECT kicked, kicked_by, kick_reason, kick_time FROM '.KICK_TABLE.' ORDER BY kick_time DESC');
$muteq = $db->prepare('SELECT muted, muted_by, mute_reason, mute_time, mute_expires_on FROM '.MUTE_TABLE.' ORDER BY mute_time DESC');
$warnq = $db->prepare('SELECT warned, warned_by, warn_reason, warn_time FROM '.WARN_TABLE.' ORDER BY warn_time DESC');
$banq->execute();
$kickq->execute();
$muteq->execute();
$warnq->execute();
基本上我想所有這些查詢爲一體+兩個_Record表結合在一起。任何可以幫助我的建議都是非常值得讚賞的,因爲我花了無數個小時試圖自己解決這個問題。
提前致謝!
選擇它們是從每個表興趣等於列,並做了UNION。 – Mihai