Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Объединения таблиц, и сортировка
 
 автор: instructor   (25.01.2008 в 10:52)   письмо автору
 
 

Решил наконец то освоить Joinы, но пока туговато идет)
есть 2 таблицы
pics:

id - id картинки
url - url картинки

и comments:

pid - id картинки к которой относится комментарий
comment - комментарий

Реально ли одним запросом выбрать только те картинки у которых есть комментарии, и отсортировать их по количеству комментариев? Причем результатом выборки должна быть таблица (url картинки, кол-во комметариев).

Заранее спасибо.

   
 
 автор: cheops   (25.01.2008 в 12:08)   письмо автору
 
   для: instructor   (25.01.2008 в 10:52)
 

Можно воспользоваться следующим запросом
SELECT pics.id AS id, pics.url AS url, COUNT(comments.id) AS total
FROM pics JOIN comments
GROUP BY comments.id
ORDER BY total DESC

   
 
 автор: Trianon   (25.01.2008 в 19:04)   письмо автору
 
   для: cheops   (25.01.2008 в 12:08)
 

> SELECT pics.id AS id, pics.url AS url, COUNT(comments.id) AS total
> FROM pics JOIN comments
> GROUP BY comments.id
> ORDER BY total DESC

открытый JOIN - без условия соединения - такое понасчитает...


SELECT pics.id AS p_id, pics.url AS p_url, COUNT(comments.id) AS total
FROM pics JOIN comments ON comments.pid = pics.id
GROUP BY p_id, p_url 
ORDER BY total DESC

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования