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




MySQL.RU - Webboard



Вернуться
Статистическая выборка по трем таблицам (Наталья) 10/12/2011 - 15:42:26
      Re: Статистическая выборка по трем таблицам (Akina) 11/12/2011 - 21:03:06
      Re: Статистическая выборка по трем таблицам (Наталья) 11/12/2011 - 23:57:20
      Re: Статистическая выборка по трем таблицам (Akina) 12/12/2011 - 09:24:25
      Re: Статистическая выборка по трем таблицам (Наталья) 12/12/2011 - 10:38:55



From: Наталья - 10/12/2011 - 15:42:26
Subject:Статистическая выборка по трем таблицам
-----------------
День добрый.

Есть три таблицы. Юзеры, мульты и игры. Таблицы "мульты" и "игры" заполняются юзерами. В каждой из них есть поле, которое содержит id юзера, который добавил в БД данную инфу.
Нужно сделать выборку так, чтобы получить данные о том, сколько всего всякой всячины (мульты+игры) было добавлено данным юзером в БД. И отсортировать по числу добавленного.

users:
u_id u_login
--------------
1 login1
2 login2
3 login3
4 login4

mult:
m_id m_name m_u_id
-------------------------
1 m_name1 1
2 m_name2 1
3 m_name3 2
4 m_name4 2
5 m_name5 2
6 m_name6 4

play:
p_id p_name p_u_id
-----------------------
1 p_name1 3
2 p_name2 3
3 p_name3 2
4 p_name4 4
5 p_name5 3
6 p_name6 4

Запрос должен вывести следующее
u_id u_login add_to_bd
-------------------------
2 login2 4
3 login3 3
4 login4 3
1 login1 2


таблицы:
CREATE TABLE `users` (
`u_id` INT NOT NULL AUTO_INCREMENT ,
`u_login` VARCHAR( 40 ) NOT NULL ,
UNIQUE (`u_id` )
);
INSERT INTO `users` ( `u_id` , `u_login` )
VALUES ('', 'login1'), ('', 'login2'),('', 'login3'), ('', 'login4');

CREATE TABLE `mult` (
`m_id` INT NOT NULL AUTO_INCREMENT ,
`m_name` VARCHAR( 50 ) NOT NULL ,
`m_u_id` INT NOT NULL ,
UNIQUE (`m_id` )
);
INSERT INTO `mult` ( `m_id` , `m_name` , `m_u_id` )
VALUES ('', 'm_name1', '1'), ('', 'm_name2', '1'),('', 'm_name3', '2'), ('', 'm_name4', '2'),('', 'm_name5', '2'), ('', 'm_name6', '4');

CREATE TABLE `play` (
`p_id` INT NOT NULL AUTO_INCREMENT ,
`p_name` VARCHAR( 50 ) NOT NULL ,
`p_u_id` INT NOT NULL ,
UNIQUE (`p_id` )
);
INSERT INTO `play` ( `p_id` , `p_name` , `p_u_id` )
VALUES ('', 'p_name1', '3'), ('', 'p_name2', '3'),('', 'p_name3', '2'), ('', 'p_name4', '4'),('', 'p_name5', '3'), ('', 'p_name6', '4');






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

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

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



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