Как из поиска исключить записи по ID?

Flintarix

Новичок
Как из поиска исключить записи по ID?

Делаю поиск через select:

PHP:
SELECT * FROM table WHERE `name` LIKE '%$text%' OR `description` LIKE '%$text%'

Но мне нужно чтобы в поиске не отражались, например, записи с id = 121, 122, 123, 124, 125, 126. Подскажите пожалуйста как мне это сделать? Заранее благодарю.
 
Flintarix
NOT IN тебе поможет. А вообще почитай: http://phpclub.ru/detail/article/mysql_search так как LIKE в случае если в начале выражения находится знак % делает полный просмотр таблици и не использует индексов.
 
А можно увидеть пример как применяется NOT IN? По ссылке baev(a) не нашел примера.

phprus, я так понимаю в моем случае (с моим кодом) будет большая нагрузка на базу?

-~{}~ 24.03.07 16:49:

Правильно?

PHP:
SELECT * FROM table WHERE `name` LIKE '%$text%' OR `description` LIKE '%$text%' AND id NOT IN (121, 122, 123, 124, 125, 126)
 
По ссылке baev(a) не нашел примера.
Это как же надо делать вид, что, типа, «я искал», чтоб не увидеть там примеров?

Мля.
Ведь прям посреди страницы выводятся — не заметить ну очень сложно...
 
Проверил, работает, но не так как нужно.

При условии, что написал я, получается условие: (name содержит $text) или (description содержит $text и id не 121, 122, 123, 124, 125, 126). Т.е. в рез-те поиска сможет появиться запись из базы с name содержащим $text , но её id будет 121.

Мне нужно, чтобы было условие: id не 121, 122, 123, 124, 125, 126; name содержит $text или description содержит $text. Как такое организовать? Все перебрал с or и and.
 
Сверху