Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: PHP - несколько вопросов
Показать сообщение отдельно

Аватара для Coutty

Кот Ти


Сообщения: 7318
Благодарности: 1204

Профиль | Отправить PM | Цитировать


При точных запросах вам не нужна релевантность. Вам нужно точное совпадение:
Код: Выделить весь код
SELECT * FROM table_name WHERE stolb1 = 'запрос' OR  stolb2 = 'запрос' OR stolb3 = 'запрос'
Но обычно полную строку никто не ищет, поэтому вместо stolb = 'запрос' пишите stolb LIKE '%запрос%'. Т.е. пробелы внутри запроса будут обрабатываться как есть, но сама подстрока будет обнаруживаться как в начале, так в середине и конце строк.
Чтобы упорядочить выдачу, добавьте в конце ORDER BY stolb_name ASC
ASC - по возрастанию (указывать не обязательно, т.к. по умолчанию), DESC - по убыванию. Можно указать несколько полей через запятую, тогда упорядочивание будет производиться сначала по первому, потом по второму и т.д.(имеется в виду, что в первом поле "автор" Пушкин будет идти после Гоголя, конечно, но у самого Пушкина произведения будут упорядочены по второму полю "название").

Прим: LIKE - странная штука. Когда я делал поиск по прайсу, она находила даже запросы длиной меньше 4 символов, но что это были за результаты... Каждый раз что-то своё. И только больше 4 символов запроса находились точно.
Это сообщение посчитали полезным следующие участники:

Отправлено: 04:05, 11-08-2009 | #16

Название темы: PHP - несколько вопросов