這是我在此論壇中的第一個問題。我需要創建一個代碼來接受從x到y(區號)的一系列值,並在數據庫中檢查它們。如果代碼在數據庫中,它會返回它,當它不在數據庫中時,它會返回值和錯誤。我希望我明確我需要做的事情!檢查MySql數據庫中的值的範圍並返回空值
這裏是我現在所擁有的代碼:
public static function uncountedAreaReport($stocktake_id, $sections,$start,$finish)
{
if ($start<=$finish) {
$area_qry = "
SELECT
sa.area_code,
sa.stocktake_area_id,
ss.stocktake_staff_name
FROM
stocktake_areas sa
LEFT JOIN
stocktake_staff ss
ON
ss.stocktake_staff_id = sa.area_checked_user_id
WHERE
sa.stocktake_id = '{$stocktake_id}'
AND
sa.area_code
BETWEEN ".$start." AND ".$finish."
ORDER BY sa.area_code ASC;
";
$area_res = db::c()->query($area_qry);
$report = "
<table cellspacing='0' class='area_sum_report'>
<tr>
<td class='simple_header' style='width:30%;'><div class='nosplit'>Area Name</div></td>
<td class='simple_header' style='width:10%;'><div class='nosplit'>Area Code</div></td>
<td class='simple_header' style='width:14%;'><div class='nosplit'>Area Status</div></td>
<td class='simple_header' style='width:12%;'><div class='nosplit'>Total Count</div></td>
<td class='simple_header' style='width:8%;'><div class='nosplit'>Checked</div></td>
<td class='simple_header' style='width:13%;'><div class='nosplit'>Checked Date</div></td>
<td class='simple_header' style='width:13%;'><div class='nosplit'>Checked By</div></td>
</tr>
";
$st_data = $area_res->fetchAll();
foreach ($st_data as $stmem){
$report .= "
<tr>
<td style='text-align:left;'><div class='nosplit'>".$start."</div></td>
<td><div class='nosplit'>".$stmem['area_code']."</div></td>
<td><div class='nosplit'>".$row['area_status']."</div></td>
<td><div class='nosplit'>".$rounded_qty."</div></td>
<td><div class='nosplit'>
";
$start++;
$report .= "
</div></td>
<td><div class='nosplit'>".l::datetime($row['area_checked_date'])."</div></td>
<td><div class='nosplit'>".$row['stocktake_staff_name']."</div></td>
</tr>
";
$report .= "</table><br/><br/>";
return $report;
}
}}
現在,如果它是在數據庫返回的價值,但跳過不用時。歡迎任何建議!
問候, 阿圖爾
你能舉一個例子,你是什麼意思的「返回值和錯誤」?你不應該在應用程序中而不是在數據庫中執行此操作嗎? –
我在數據庫中有一個名爲area_code的列。我需要的是以下 如果$ start IN area_code返回YES if $ start NOT in area_code return NO 這只是簡單的解釋。 – ArtleMaks
聽起來像你的SQL查詢正在工作,你只需要在表示層(即PHP)上工作。當地區代碼不在數據庫中時,$ st_data包含什麼? (而區域代碼在數據庫中時,$ st_data包含的是什麼) – AgRizzo