2

我有问题SQL SELECT DISTINCT,和 PHP/jQuery。我正在使用自动完成功能,它正在工作,但不像预期的那样。我有一些行的数据库:

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

我有 SQL 查询:

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

但是当我在搜索输入中输入名称时,我没有得到不同的值:

在此处输入图像描述

所以我需要你的报价怎么办,

数据库输出:

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');
4

2 回答 2

5

您可以尝试使用聚合函数。

SELECT name
FROM poi_example
WHERE name LIKE '%$text%'
GROUP BY name
ORDER BY name ASC
于 2012-10-17T08:19:03.053 回答
1

很明显,问题出在您的应用程序上。一个 distinct 不会返回重复值,特别是因为您说该查询适用于您的数据库。

你确定你正在执行那个确切的查询吗?也许如果您发布一些代码,我们可以帮助您

于 2012-10-17T08:39:11.387 回答