MYSQL: метод SELECT - но не отображаются дубликаты / GROUP или DISTINCT? - PullRequest
10 голосов
/ 06 апреля 2010

Как выбрать и не показывать дубликаты? На самом деле, это выглядит так: apple | яблоко | яблоки | яблоко

Это мой код:

$search = $_GET['q'];
$query = "SELECT * FROM query WHERE searchquery LIKE '%$search%' AND searchquery <> '$search'"; 

1 Ответ

19 голосов
/ 06 апреля 2010

Вы уже сказали волшебное слово: DISTINCT.

SELECT DISTINCT columnname
FROM query
WHERE ....

Обратите внимание, что, вероятно, он не будет работать, если вы используете SELECT DISTINCT *, потому что при выборе * это означает, что нужно выбрать все столбцы, включая столбцы, которые имеют уникальное ограничение, например первичный ключ. Выбирайте только те колонки, которые вам нужны - держитесь подальше от * в целом и особенно при использовании DISTINCT.

...