2012-10-17 138 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