Укажите, ГДЕ может выглядеть предложение LIKE - PullRequest
0 голосов
/ 17 апреля 2019

Я хочу использовать предложение LIKE, чтобы помочь с функцией поиска.В зависимости от того, кто на сайте, у пользователя будет имя, и с этим именем я хочу указать, где в базе данных искать.

Если у меня есть таблица, подобная этой: Имя: статистика

username - score - id
Erik     - 15    - 1     
John     - 10    - 2
John     - 12    - 3
Erik     - 15    - 4
Philip   - 13    - 5
Patrik   - 15    - 6
Patrik   - 17    - 7
Patrik   - 8     - 8
Erik     - 9     - 9
SELECT username, score, id, FROM stats WHERE id 
LIKE'%".search."%'
OR username LIKE'%".search."%'
OR score LIKE'%".search."%'
AND username = 'Erik';

, что происходит сейчас, так это то, что он возвращает erik и patrik, если я ищу erik, потому что rik вставлен в имя пользователяпоиск, и если я введу 15, он также вернет значения Erik и patriks

Есть ли способ перезаписать это, поэтому, когда я ставлю WHERE username = erik, он будет использовать предложение Like только в строках, которые имеют это имя пользователязначение, а не прочитать всю таблицу

1 Ответ

1 голос
/ 17 апреля 2019

Поскольку мой комментарий сработал ... Вот предлагаемое решение.

Вам необходимо поставить круглые скобки вокруг желаемой иерархии.

SELECT username, score, id 
FROM stats 
WHERE (id LIKE'%".search."%'
OR username LIKE'%".search."%'
OR score LIKE'%".search."%')
AND username = 'Erik';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...