Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Помогите разобраться с JOIN (LaserJump) 13/11/2001 - 15:37:26
      Re: Помогите разобраться с JOIN (Василий) 13/11/2001 - 16:43:48
      Re: Помогите разобраться с JOIN (dannis) 13/11/2001 - 17:07:48
      Re: Вот (+) (Василий) 13/11/2001 - 21:07:00
      Re: Спасибо за помощь (LaserJump) 15/11/2001 - 14:37:46

> Original message text:
> From: LaserJump - 13/11/2001 - 15:37:26
> Subject:Помогите разобраться с JOIN
> -----------------
> Есть таблица-справочник по клиентам
> Clients (int IdClient, str Name...)
> Есть таблица с платежами клиентов
> Payments (int IdClient, date , rubpay...)
>
> Нужно отобрать суммарные платежи клиентов за конкретный месяц, причем если платежей от клиента не поступало нужно чтобы в результат отбора попали нулевые платежи, т.е. в результате нужно получить столько же записей, сколько есть клиентов.
>
> Пытаюсь делать так:
> SELECT b.IdClient, SUM(b.rubpay)
> FROM Clients a LEFT JOIN Payments b ON (a.IdClient=b.IdClient)
> WHERE ((MONTH(date) = 11)
> AND (YEAR(date) = 2001))
> GROUP BY b.IdClient;
>
> Получаю только суммарные платежи для клиентов, у которых платежи были =(
> Подскажите в чем собака порылась?
>


From: dannis - 13/11/2001 - 17:07:48
Subject:Помогите разобраться с JOIN
-----------------
Не-а.
Выборка происходит после соединения, поэтому Null-значений не будет.
У меня заработало так:
SELECT t1.IdClient,SUM(rubpay)/3
FROM Clients t1 NATURAL JOIN Payments
RIGHT JOIN Clients t2 ON (MONTH(date)=11 AND YEAR(date)=2001)
WHERE t1.IdClient=t1.IdClient GROUP BY t1.IdClient;



[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
796



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |