Запрос 'select like' (это не то, о чём было говорено 100 раз)

walker_ag

Новичок
Запрос 'select like' (это не то, о чём было говорено 100 раз)

Здравствуйте.
Вот такой вопрос, если я делаю запрос-

select * from mytable where example like '%something%'

то на экран выводится всё содержимое этой ячейки, т.е. слишком много лишнего текста. Можно ли как-то сократить результат. Скажем показывать лишь предложение в котром встречается это слово.
Или же вообще, в зависимости от запрашиваемого слова выводится ссылка на соответствующий раздел.

Спасибо.
 

tony2001

TeaM PHPClub
SUBSTRING() в запросе и вообще работа со строками в MySQL.
либо уже в П%D
 

tony2001

TeaM PHPClub
SUBSTRING() в запросе и вообще работа со строками в MySQL.
либо уже в ПХП обрабатывать результат.
ссылка - это уж ты сам придумай как
 

walker_ag

Новичок
А какой есть более удобный способ осуществления поиска чем использования LIKE ?
 

walker_ag

Новичок
Возможно я неправильно воспринял твою реплику "при чем тут LIKE". Мне показалось, что ты имеешь ввиду, что LIKE не очень походит для данной цени, хотя я не видел ничего более подходященго. Но раз ты не имел это в виду....

Ну а как можно обрабатывать данные выводимые после запроса select like ? Или где про это можно почитать?
 

vladis

Guest
Знаете чо? Может я неправ, но почитав все это, мне показалось, что тов. Dmitry несколько не впиливает основы, т.е. что получив результат запроса, с ним можно (и нужно) еще что-то делать. Dmitry, извини если чо, но
>Ну а как можно обрабатывать данные выводимые после запроса select like ?>Или где про это можно почитать?
(цитата)

Так вот.
После запроса к базе данных
$res = mysql_query("select id, name from mytable where example like '%something%' ");
у тебя в $res будут результаты выборки из базы. И вот с ними можно сделать
все что хочешь. В частности, вывести на экран первые 30 символов.
while ($row=mysql_fetch_row($res)) echo "id = $row[0] name = ", substr($row[1],0,30),"<br>";

А можно эту работу переложить на базу, выполняя запрос
select id, SUBSTRING(name,0,30) from mytable where example like '%something%'

И вообще, почитай какой-нить мануал по PHP.
RTFM - это, знаешь ли, полезно и укрепляет организм :)
 

walker_ag

Новичок
2 vladis- Да нет, ничего конечно, но просто хочу сказать- если я ещё не всё понимаю в MySQL, это не значит, что я ламмер, вернее из твоих слов мне показалось, что ты клонишь именно к этому. Я могу ошибаться, да и вообще, ты можешь думать что хочешь, но мне кажется что твоё предположение насчёт меня основывается лишь на неправильно поставленном запросе к гуру php.
Я пришёл в форум не за тем, что бы кому-то доказать что я что-то знаю или нет, а что бы унать решение конкретной проблемы и пришёл я сюда из-за того, что нужной доки на эту тему не нашёл... что ж.. буду искать..

А за пример спасибо...
 

vladis

Guest
Yo, Dmitry!
Ладно, извини.
Согласен, в моем посте было слишком много сарказма, из-за моего текушего хорошего настроения.
Сорри.
 
Сверху