我想添加另一個WHERE查詢,但我沒有任何喜悅。其他字段
我有一個有三個字段的表單:price,min_price和max_price。
我已經加入這一行:
WHERE 'price' BETWEEN 'property_min_price' AND 'property_max_price'
這似乎合乎邏輯的我,但它不工作。有小費嗎?謝謝。
/**
* Set the Query
*/
private function setQuery()
{
$sql = "
SELECT
p.post_title AS title,
p.ID AS id," .
$this->sqlFieldVars() . "
lat.meta_value AS latitude,
lng.meta_value AS longitude,
(" . $this->query_data['diameter'] . " * acos(cos(radians(@origlat)) * cos(radians(lat.meta_value))
* cos(radians(lng.meta_value) - radians(@origlng)) + sin(radians(@origlat)) * sin(radians(lat.meta_value))))
AS distance
FROM " . $this->query_data['post_table'] . " AS p
LEFT JOIN " . $this->query_data['meta_table'] . " AS lat
ON p.ID = lat.post_id AND lat.meta_key = '" . $this->query_data['lat_field'] . "'
LEFT JOIN " . $this->query_data['meta_table'] . " AS lng
ON p.ID = lng.post_id AND lng.meta_key = '" . $this->query_data['lng_field'] . "'" .
$this->sqlFieldJoins() . "
WHERE lat.meta_value
BETWEEN @origlat - (@distance/@dist_unit)
AND @origlat + (@distance/@dist_unit)
AND lng.meta_value
BETWEEN @origlng - (@distance/(@dist_unit * cos(radians(@origlat))))
AND @origlng + (@distance/(@dist_unit * cos(radians(@origlat))))
AND `post_type` = '" . $this->query_data['post_type'] . "'
AND `post_status` = 'publish'
WHERE 'price' BETWEEN 'property_min_price' AND 'property_max_price'
HAVING distance < @distance
ORDER BY distance\n" .
$this->sqlLimit() . ";";
$this->sql = $sql;
}
你能分享你的錯誤嗎? –
當我添加該行時,該表單無法正常工作。 – dmt
你有兩個where子句.. – amdixon