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




MySQL.RU - Webboard



Вернуться
Помогите написать запрос пожалуйста (Саринита) 26/10/2008 - 21:41:30
      Re: Помогите написать запрос пожалуйста (bac) 26/10/2008 - 23:37:20
      Re: Помогите написать запрос пожалуйста (w2w) 05/11/2008 - 00:38:20

> Original message text:
> From: Саринита - 26/10/2008 - 21:41:30
> Subject:Помогите написать запрос пожалуйста
> -----------------
> Народ, я в MYSQL Не сильна мягко говоря, а очень нужно прикрутить к одной базе запросик. Помогите пожалуйста, я знаю что грамотным это на 5 минуток.
>
> есть следующие таблицы:
>
> 1) Users. Поля (значимые) user_id, username
> 2) Members Поля (значимые) member_id, member_name, member_earned, member_spend
> 3) member_user поля user_id (из 1) и member_id (из второй)
>
> Вобщем каждому юзеру принадлежит несколько мемберов.
>
> Надо чтобы запрос посчитал sum(member_earned) - sum(member_spend) по всем мемберам для каждого юзера и выдал общую цифру -
>
> Юзер 1 итог 000
> Юзер2 итог 000
>
> И т.д. рассортировав по алфавиту по полю username.
>
> Нарисуйте плиз -)))
>
>
>


From: w2w - 05/11/2008 - 00:38:20
Subject:Помогите написать запрос пожалуйста
-----------------
Думаю, что более правильным будет все же такой вариант:

SELECT USER_NAME, IFNULL(SUM(MEMBER_EARNED) - SUM(MEMBER_SPEND), 0) TOTAL
FROM USERS U
LEFT JOIN MEMBER_USER MU ON (MU.USER_ID=U.USER_ID)
LEFT JOIN MEMBERS M ON (M.MEMBER_ID=MU.MEMBER_ID)
GROUP BY U.USER_ID
ORDER BY U.USER_NAME

P.S. часто встречаю запросы с использование подзапросов где это только можно себе представить, одного не пойму зачем?

Простые запросы легче читаются и оптимизатору с ними проще работать.


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

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

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



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