
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
28.11.2013, 11:52:30
|
|||
|---|---|---|---|
|
|||
Составление sql запроса |
|||
|
#18+
Добрый день, нужна помощь, я не могу сообразить... Примерная таблица: id(1,2,3,4,5), spec_time(1085645344,1185645344,1285645344,1385645344,1485645344), spec_position(2,1,3,5,4), update_datetime(1581930967,1481930967,1381930967,1281930967,1181930967) В чем суть... Делаю организацию объявлений, объявления могут быть специальными (если spec_time>UNIX_TIMESTAMP()), Если объявление не специальное, то обычное. Что нужно: Первыми выводятся объявления специальные, т.е. те, у которых spec_time>UNIX_TIMESTAMP(), сортируются они по "spec_position", за ними выводятся все остальные объявления, которые должны сортироваться по update_datetime DESC. Т.о. даже если у объявления стоит "spec_time" но он "просрочен", то должен выводиться в куче с обычными объявлениями сортируясь по "update_datetime". Прошу помощи, сам не могу сообразить... Подскажите хоть куда копать пожалуйста... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.11.2013, 12:15:50
|
|||
|---|---|---|---|
|
|||
Составление sql запроса |
|||
|
#18+
Пробовал сделать что-то вроде: ORDER BY case when UNIX_TIMESTAMP()<advert.spec_time then advert.spec_position else advert.update_datetime Но кажется я не угадал... Этот ордер выкидывает наверх спец-объявления, но не сортирует обычные... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&tablet=1&tid=1835636]: |
0ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 259ms |
| total: | 387ms |

| 0 / 0 |
