жду ваших ответов. с уважением.
Спустя 20 минут, 59 секунд (27.12.2008 - 23:43) sergeiss написал(а):
Судя по вопросу, автор совсем уж "на Вы" с БД.
Для начала покажи, плз, структуру своей БД, и то, что ты уже выводишь (точнее, КАК это делаешь, какими запросами).
А вообще, надо использовать в селекте сортировку по ORDER BY.
Для начала покажи, плз, структуру своей БД, и то, что ты уже выводишь (точнее, КАК это делаешь, какими запросами).
А вообще, надо использовать в селекте сортировку по ORDER BY.
Спустя 8 минут, 57 секунд (27.12.2008 - 23:52) Rem написал(а):
Цитата |
Для начала покажи, плз, структуру своей БД |
в ней хранится id фото, за которую голосовали, id пользователя, который голосовал, и балл, который он поставил. названия у них photo_id, user_id и rating соответственно. мне нужно посчитать средний балл для каждой из них и вывести его по неубыванию.
Цитата |
А вообще, надо использовать в селекте сортировку по ORDER BY. |
это я знаю. вопрос в том - как реализовать вывод фотографий по неубыванию среднего балла. создавать отдельную таблицу, в которой будет храниться средний балл каждой фото и обновлять его каждый раз, когда будет получен голос - не очень хорошая идея имхо.
Спустя 16 минут, 16 секунд (28.12.2008 - 00:08) sergeiss написал(а):
Зачем создавать отдельную таблицу? Я думаю, более чем достаточно будет считать его каждый раз. Сначала делаем выборку всех фот_айди и среднего балла (с группировкой по айди), а затем сортируем всё это:
SELECT photo_id, avg(rating) as avg_rating
from your_table_with_photo
group by photo_id
order by avg_rating
PS. А "идея" создавать отдельную таблицу для среднего балла не то, что "не очень хорошая", а вообще плохая!!!
SELECT photo_id, avg(rating) as avg_rating
from your_table_with_photo
group by photo_id
order by avg_rating
PS. А "идея" создавать отдельную таблицу для среднего балла не то, что "не очень хорошая", а вообще плохая!!!
Спустя 2 минуты, 8 секунд (28.12.2008 - 00:10) Rem* написал(а):
avg - функция расчёта среднего балла?
Спустя 2 минуты, 42 секунды (28.12.2008 - 00:13) sergeiss написал(а):
Цитата (Rem* @ 28.12.2008 - 00:10) |
avg - функция расчёта среднего балла? |
Не среднего балла, а средней величины... См. хэлп для более детального описания! Ищи в функциях для SQL.
Спустя 1 минута, 42 секунды (28.12.2008 - 00:14) Rem* написал(а):
Спасибо. Буду знать

Спустя 8 часов, 20 минут, 3 секунды (28.12.2008 - 08:35) Sylex написал(а):
Наиболее эффективным способом увеличения скорости аналитических вычислений при больших объемах (в конкретном случае) является предварительное выполнение наиболее трудоёмких
вычислений, связанных с агрегаций данных и хранение их в вспомогательных
(агрегатных) таблицах.
Без этого иногда не обойтись. Но не в данном случае:)
вычислений, связанных с агрегаций данных и хранение их в вспомогательных
(агрегатных) таблицах.
Без этого иногда не обойтись. Но не в данном случае:)
_____________
tesseract (10:09:16 1/06/2007)
к вопросу о вчерашних скриптостраданиях. Только что кодер знакомый прислал, нашёл в коде программы, написанной уволенным коллегой незадолго до ухода:
#define TRUE FALSE //счастливой отладки <ВЦ>
такого извращённого юмора ещё не встречал
Rouse_ (10:09:56 1/06/2007)
#define true ((rand() % 2) ? true : false) //с первым апреля