我有以下功能:PHP/MySQL - 查詢循環?
private static function getFixedFare($FixedFareId) {
$pdo = new SQL();
$dbh = $pdo->connect(Database::$serverIP, Database::$serverPort, Database::$dbName, Database::$user, Database::$pass);
try {
$query = "SELECT Fare FROM tblfixedfare
WHERE FixedFareId = :fixed_fare_id
AND DayHalf = :day_half";
$stmt = $dbh->prepare($query);
$stmt->bindParam(':fixed_fare_id', $FixedFareId, PDO::PARAM_INT);
$stmt->bindParam(':day_half', self::$day_half, PDO::PARAM_STR);
$stmt->execute();
$result = $stmt->fetch(PDO::FETCH_COLUMN);
$stmt->closeCursor();
$dbh = null;
return $result;
}
catch (PDOException $pe) {
die("Error: " .$pe->getMessage(). " Query: ".$stmt->queryString);
}
}
基本上我想改變查詢做九種不同的選擇,具體如下:
$query = "SELECT Fare FROM tblfixedfare
WHERE FixedFareId = :fixed_fare_id
AND DayHalf = :day_half
AND CarType = 'Car'";
和
$query = "SELECT Fare FROM tblfixedfare
WHERE FixedFareId = :fixed_fare_id
AND DayHalf = :day_half
AND CarType = 'Est'";
與同爲所有其他類型的車輛,'Exec','ExecEst','6B','7B','7W','8B'和'巴士'將只會是這些車型。
我希望能將這些查詢結果中的每一個存儲到不同的變量中,而不必做9個不同的查詢(減少代碼)。如一個循環,然後將結果存儲到$ resultcar,$ resultest等...
不確定我會如何做到這一點,所以任何幫助將不勝感激! :-)