我正在使用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