我正在使用MySQL查詢來檢查2個表中是否有小於30天的任何結果。mysql檢查兩個表的結果?
我有表1「供應商的銀行細節」和表2「供應商發票」
我所試圖做的是,如果結果是表1中找到,那麼回聲出類型的結果是IE
Result from Table 1 echo{some data from table} echo{some data from table}
或反之結果從表2回聲出以下:
Result from Table 2 echo{some data from table} echo{some data from table}
否則如果結果在兩個發現回聲出然而兩者多次結果發生在表1和表2
即:
Result from Table 1 echo{some data from table} echo{some data from table}
Result from Table 2 echo{some data from table} echo{some data from table}
Result from Table 1 echo{some data from table} echo{some data from table}
Result from Table 1 echo{some data from table} echo{some data from table}
Result from Table 2 echo{some data from table} echo{some data from table}
,我試圖日期組織這些。否則如果沒有發現結果顯示未找到結果。我的問題是它沒有工作,沒有結果顯示,也沒有迴應我找不到結果。這裏是我的代碼,請能有人告訴我在哪裏,我錯了,感謝
<?php require_once 'config.php'; ?>
<?php
$tbl_name1 = 'supplier_bank_details';
$tbl_name2 = 'supplier_invoices';
$query3 = "select * from $tbl_name2 as $tbl_name2, $tbl_name1 as $tbl_name1 WHERE $tbl_name2.date > NOW() - INTERVAL 30 DAY AND $tbl_name1.date > NOW() - INTERVAL 30 DAY AND $tbl_name2.user_id = '{$_SESSION['id']}' AND $tbl_name1.user_id = '{$_SESSION['id']}' GROUP BY $tbl_name2.user_id ORDER BY $tbl_name2.date AND $tbl_name1.date DESC";
$result3 = mysql_query($query3) or die(mysql_error());
while($row3 = mysql_fetch_assoc($result3)){
$datetime1 = new DateTime(); // Today's Date/Time
$datetime2 = new DateTime($row3['date']);
$interval = $datetime1->diff($datetime2);
$s = $interval->format('%d days ago');
if($s === '0 days ago') {
$z = 'amended today';
}else{
$z = 'amended about '.$s.'';
}
$account_number = '****'.substr($row3['account_number'], -4);
if(mysql_num_rows($result3) > 0) {
// your unique column for Bank Details
if(!is_null($row3['sort_code'])) {
echo '<div class="contracts_area"><div class="table_header"></div>';
echo '<div class="request"><p>result from table 1</p><p>'.$row3['sort_code'].'</p><p>'.$account_number.'</p><p>'.$z.'</p></div>';
echo '</div>';
}
// your unique column for Invoice Details
if(!is_null($row3['reference'])) {
echo '<div class="contracts_area"><div class="table_header"></div>';
echo '<div class="request"><p>result from table 2</p><p>'.$row3['reference'].'</p><p>'.$row3['status'].'</p><p>'.$z.'</p></div>';
echo '</div>';
}
}else{
echo 'No Recent Activity';
}
} ?>
感謝您的建議,但是這給了我一個錯誤:未收集異常'異常'與消息'DateTime :: _ construct() – 2015-02-10 15:40:08
好吧,所以我已經刪除了導致初始錯誤的日期時間間隔代碼,但現在我如果(!is_null($ row3 ['reference'])){ – 2015-02-10 16:15:22
您可能不再有您正在嘗試查找的列,則會發生錯誤,表明索引引用未定義爲以下行。答案已更新。 – Prisoner 2015-02-10 17:07:31