0
我知道有一種方法可以使用JOIN
來組合這三個查詢,但我無法將它包裹在頭上。如何基於另一個查詢結果集執行MySQLi查詢?
我在做什麼是首先檢索MessageID
和SubscriberID
。基於關閉這些結果,我搜集的信息數據和數據用戶:
$queued = $db->select("SELECT MessageID, SubscriberID FROM mailing_queue WHERE Paused = 0 ORDER BY StartDate ASC LIMIT 500");
if (!empty($queued)) { // if $queued exists
$i = 0;
foreach ($queued as $key => $value) {
$msg = $db->selectRow("SELECT Subject, Body FROM mailing_messages WHERE ID = '$value[MessageID]' LIMIT 1"); // Returns single row
if ($msg) { // If $msg exists
$to = $db->selectRow("SELECT Email, FirstName, LastName, History FROM mailing_subscribers WHERE ID = '$value[SubscriberID]' LIMIT 1"); // Returns single row
if ($to) { // If $to exists
// Send email & do other stuff
}
}
}
}
基本上,我試圖讓Subject
,Body
,Email
,FirstName
,LastName
和History
都在同一個查詢,如果可能的。
我知道必須有一個更有效的方法來做到這一點。
這看起來great-正是我試圖做的,但我沒有得到任何結果在返回時應該有...... – JROB
你得到一個錯誤,或者你得到一個空結果? –
我發現它......'ORDER BY mailing_queue.StartDate'。 +1感謝您的幫助! – JROB