|
|
|
|
|
для: cheops
(04.02.2011 в 21:50)
| | спасибо. это больше похоже на то, что она хочет. один с 1-й очередью всегда первый, остальным я поставила очередь 0 и они меняются. но боюсь, что она захочет и остальные расставить по очереди... | |
|
|
|
|
|
|
|
для: elenaki
(04.02.2011 в 21:39)
| | Если ban_order принимает 1 для фиксированных баннеров и 0 для всех остальных, тогда всунуть фиксированный баннер перед тремя случайными можно так
select * from banners
WHERE ban_pos='block_1'
order by ban_order DESC, RAND()
limit 4
|
| |
|
|
|
|
|
|
| есть таблица баннеров.
из нее выбирались случайные 4, сортировались согласно очередности и выводились. теперь дура-заказчица хочет, чтобы один из этих четырех баннеров всегда показывался первым, а три остальных - выбирались бы как и раньше случайным образом, сортировались и выводились после первого.
запрос был такой -
$banner_query = mysql_query("SELECT * FROM (select * from banners WHERE ban_pos='block_1' order by RAND(), ban_order limit 4) tmp ORDER by tmp.ban_order") or die(mysql_error());
|
теперь надо выбрать сначала баннер, у которого ban_order=1, потом 3 других случайных, одним запросом. у меня там еще несколько запросов и они вызываются соответственно определенным условиям. | |
|
|
|
|