2012-10-17 259 views
2

我有問題SQL SELECT DISTINCT和PHP/jQuery。我正在使用自動完成功能,它正在工作,但並不像預期的那樣。我有一些行數據庫:SELECT DISTINCT返回所有值

Lukoil.. 
Lukoil.. 
Statoil.. 
Statoil.. 
Statoil.. 
Neste.. 
Neste.. 

而且我有SQL查詢:

SELECT DISTINCT name FROM poi_example WHERE name LIKE '%$text%' ORDER BY name ASC 

但是當我鍵入搜索輸入一個名字,我沒有得到不同的值:

enter image description here

所以我需要你的優惠怎麼辦,

數據庫輸出:

INSERT INTO `poi_example` (`id`, `name`, `description`, `lat`, `lon`, `city`, `rajonas`) VALUES 
(24, 'Statoil', 'Veiverių pl. 49a, Kaunas tel.: 8-37 39 10 62 Degalinės darbo laikas Visą parą Plovyklų darbo laikas: Visą parą', '54.88111', '23.89360', 'Kaunas', 'Aleksotas'), 
(25, 'Statoil', 'Karaliaus Mindaugo pr.34a, Kaunas tel.: 8-37 42 37 29  Degalinės darbo laikas Visą parą Plovyklų darbo laikas: Visą parą', '54.89398', '23.91332', 'Kaunas', 'Naujamiestis'), 
(26, 'Statoil', 'Tvirtovės al. 33A, Kaunas tel.: 8-37 33 71 53  Degalinės darbo laikas Visą parą', '54.91333', ' 23.92631', 'Kaunas', 'Žaliakalnis'), 
(27, 'Lukoil', 'Darbo laikas: 00-24', '54.77708', '  24.11988', 'Kaunas', 'Petrašiūnai'), 
(28, 'Lukoil', 'Darbo laikas: 06-22', '54.85523', '  24.44175', 'Kaišiadiorys', 'Autostrada'), 
(32, 'Neste', 'Dirba visÄ… parÄ… 24/7', '55.665701', '21.175737', 'KlaipÄ—da', 'KlaipÄ—dos'), 
(33, 'Neste', 'Dirba 24/7', '55.948191', '25.588700', 'Rokiškis', 'Rokiškio'); 
+0

當在db上運行查詢時,結果是什麼? – hkutluay

+1

在說明您的問題與自動填充有關之前,您是否確實檢查過您的查詢結果? –

+0

類似的問題:http://stackoverflow.com/questions/6127338/sql-select-distinct-but-return-all-columns – gorzan

回答

5

您可以嘗試使用聚合函數。

SELECT name 
FROM poi_example 
WHERE name LIKE '%$text%' 
GROUP BY name 
ORDER BY name ASC 
+3

這應該不會有任何區別(但那麼它是MySQL ...) –

+0

這個查詢返回的值與我在頂部的問題圖像中的值相同 –

+0

應該不需要聚合 –

1

很明顯,問題出在您的應用程序上。沒有辦法明確會返回重複的值,特別是因爲你說該查詢在你的數據庫上工作。

是否確定您正在執行精確查詢?也許如果你發佈一些代碼,我們可以幫你

+0

你找人幫忙,我找到了解決辦法,因爲我在編輯重複文件。 –

+0

所以你應該自己添加一個答案,解釋你做了什麼,並將其標記爲答案。 – Diego