0
我寫了一個查詢與DISTINCT
但我仍然得到重複記錄返回。獨特不能正常工作
SELECT DISTINCT
`cuisine_types`.`id`,
`cuisine_types`.`name`,
`cuisine_types`.`image`,
(
SELECT group_concat(`tagname` separator ', ')
FROM `cuisine_tags`
WHERE `cuisine_type` = `cuisine_types`.`id`
) AS tags,
(
3959 * acos(cos(radians(" . $dLat . ")) * cos(radians(gps_lat)) * cos(radians(gps_lon) - radians(" . $dLon . ")) + sin(radians(" . $dLat . ")) * sin(radians(gps_lat)))
) AS distance
FROM `company`
LEFT JOIN `cuisine_types`
ON
`company`.`cuisine_type_id` = `cuisine_types`.`id`
HAVING
distance < " .$dMiles
當我嘗試使用GROUP BY
函數時,我的查詢無法正常工作。 當我使用GROUP BY
我把它放在我的上述HAVING
:
GROUP BY `cuisine_types`.`name`
例子:
當我使用這些值使用它:
$dLat = '52.779716';
$dLon = '21.84803';
$iKm = '30';
它返回:
id = 1
name = Snackbar
image =
tags = Patat, Snacks
distance = 17.4713944772963
當我使用$iKm
與3000它返回s這一行以及:
id = 1
name = Snackbar
image =
tags = Patat, Snacks
distance = 722.407714147792
所以我得到兩個記錄。 當我用groupby和$iKm
= 30;它什麼都不返回。如果值爲3000,則返回一行。但是我有一個距離爲17英里的記錄,因此在30以下。
我在您的查詢中看不到任何明顯的內容,哪些內容不正確? – 2013-02-19 17:51:25
我在您的查詢中看不到任何組,並且哪些工作不正常是什麼意思? – Khez 2013-02-19 17:53:06
對不起,我在嘗試沒有明顯的東西,爲groupby檢查頂部的帖子。 – 2013-02-19 17:58:55