







|
MySQL.RU - Webboard
Вернуться
помогите составить запрос group by (прохожий) 27/05/2008 - 20:27:46
Re: помогите составить запрос group by (опять я) 27/05/2008 - 20:37:14
> Original message text:
> From: прохожий - 27/05/2008 - 20:27:46
> Subject:помогите составить запрос group by
> -----------------
> есть таблица с картинками
>
> id - уникальный номер
> url - урл страницы где эта картинка
> thumb - урл картинки
> shows - кол-во показов
> clicks - кол-во кликов
>
> пример:
>
> 1
> http://domain.com/index.html
> http://domain.com/1.jpg
> 0
> 0
>
> 2
> http://domain.com/index.html
> http://domain.com/2.jpg
> 0
> 0
>
> 3
> http://domain.com/index.html
> http://domain.com/3.jpg
> 0
> 0
>
> 4
> http://domain1.com/index.html
> http://domain1.com/1.jpg
> 0
> 0
>
> 5
> http://domain2.com/index.html
> http://domain2.com/1.jpg
> 0
> 0
>
> 6
> http://domain2.com/index.html
> http://domain2.com/2.jpg
> 0
> 0
>
> т.е. как видите картинки уникальны, а вот урлы нет
> т.е. у одного урла может быть несколько картинок
>
> запрос:
> SELECT id FROM images GROUP BY url ORDER BY shows/(clicks+1)
> возвращает только первые три уникальные картинки с разных хостов (оно и понятно, т.к. групируется и все тут)
> как написать запрос что бы возвращались уникальные картинки (1 картинка от 1-го хоста за один раз), но(!) с учетом order by ?
>
> заранее спасибо
>
From: опять я - 27/05/2008 - 20:37:14
Subject:помогите составить запрос group by
-----------------
забыл добавить что после выборки делается
update images set shows=shows+1 where id=текущий_id (выборка в цикле)
так вот щас он выводит что-то типа:
1
4
5
увеличивает у каждого этого id счетчик shows +1 и все равно выводит 1 4 5
а надо что бы потом выводил например:
2 4 6
потом например:
3 4 5
потом
1 4 6
ну и т.д.
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
33580
|
|