![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
h8every1 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 13.2.2007 Где: Кемерово Репутация: нет Всего: нет |
есть выборка, которая выдаёт похожие новости -
нужно, чтобы после того как были выбраны 5 самых подходящих, они были отсортированы по дате. просто сделать ORDER BY relev DESC, date DESC - не подходит, т.к. будет искать сперва с одинаковыми числом в поле relev, а это практически не возможно, и только если найдёт статьи с одинаковыми значениями, отсортирует их по дате. на одном форуме мне посоветовали сортировать массив, который получается на выходе, т.к. поле date я тоже выбираю. но я не представляю как это сделать. подскажите, пожалуйста, ссылки в которых можно почитать как PHP работает с результатами БД? |
|||
|
||||
Fally |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 265 Регистрация: 17.8.2006 Где: Dahla Репутация: нет Всего: 4 |
а что мешает написать вот так: ORDER BY date DESC, relev DESC ? Ведь тогда он сначала от сортирует по дате, а уже потом по полю relev Это сообщение отредактировал(а) Fally - 30.7.2007, 09:50 |
|||
|
||||
h8every1 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 13.2.2007 Где: Кемерово Репутация: нет Всего: нет |
Fally, в том-то и дело - надо выбрать не последние новости, а самые похожие. а они могли быть и месяц назад, и два.
А в вашем варианте получается, что сперва мы сортируем новости по дате - выбирутся самые последние новости, а потом, если дата у некоторых совпадает, эти новости сортируются по релевантности. А дата совпадать будет, потому что в день добавляется примерно 20-30 новостей. не то. но спасибо за попытку =) |
|||
|
||||
sTa1kEr |
|
|||
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 9 Всего: 146 |
h8every1, сделайте через вложенный селект. Не самый практичный, но самый простой способ.
Это сообщение отредактировал(а) sTa1kEr - 30.7.2007, 11:54 |
|||
|
||||
h8every1 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 13.2.2007 Где: Кемерово Репутация: нет Всего: нет |
хех. были у меня такие мысли. и даже сделал до этого. но, к сожалению, версия MySQL , которая на сервере стоит (5.0.26) не поддерживает LIMIT в подзапросе. не знаю, поддерживает ли вообще какая-нибудь =) мне бы что-нибудь с результатом запроса наколдовать. или в php всё только по одной записи передается? в идеале было бы просто весь массив выборки отсортировать по полю 'date' - оно же тоже выбирается... но как? хотя не. я не так делал. попробую, спасибо =) Это сообщение отредактировал(а) h8every1 - 30.7.2007, 13:13 |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Базы Данных | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |