|
MySQL.RU - Webboard
Вернуться
i need help :) (Al) 10/02/2005 - 14:18:15
Re: i need help :) (Dinky) 10/02/2005 - 21:06:36
Re: i need help :) (Al) 11/02/2005 - 01:24:10
Re: i need help :) (Dinky) 11/02/2005 - 05:42:07
Re: i need help :) (Al) 11/02/2005 - 12:47:15
Re: i need help :) (Dinky) 11/02/2005 - 19:11:09
> Original message text:
> From: Al - 10/02/2005 - 14:18:15
> Subject:i need help :)
> -----------------
> Больше не могу.
> Беру помощь зала...
>
> Так получилось, что есть 3 таблицы:
>
> 1. USERS
> uid | username
> 1 | A
> 2 | B
> 3 | C
> 4 | В
>
> 2. MEMBERS (те, кто участвует из USERS)
>
> uid
> 1
> 3
> 4
>
> 3. TOP (очки набранные MEMBRES в разных турах)
>
> uid | tour | points
> 3 | 1 | 15
> 3 | 2 | 20
> 3 | 3 | 25
> 4 | 1 | 5
> 4 | 2 | 15
> 4 | 3 | 15
>
> Вопрос:
>
> Как одним запросом вывести таблицу вида:
>
> username | points2
> C (uid=3) | 45
> D (uid=4) | 30
> A (uid=1) | 0
>
> points2 - это сумма 2-х лучших туров из TOP.
> При этом в таблице должны быть все MEMBERS, даже если их нет в TOP.
>
> Please, help.
>
> С уважением,
> Александр
>
From: Dinky - 11/02/2005 - 05:42:07
Subject:i need help :)
-----------------
>MySQL 4.0.23a.
не пойдет - их там нет
текущая версия - 4.1.9
>И если есть на примете книжка, где можно почитать про подобные манипуляции с mysql,
Это не mysql, это просто SQL - любая книжка по SQL-ю ;)
Есть в документации описание синтаксиса, пока только по-английски:
http://dev.mysql.com/doc/mysql/en/subqueries.html
>Dinky, может подскажите грамотный вложенный запрос для этого безобразия?
ну прям чтоб сразу грамотный не подскажу, а вот так с лету наверное что-то такое:
SELECT u.uid, u.username, SUM(p.points) as points2
FROM users as u INNER JOIN members as m ON u.uid=m.uid
LEFT OUTER JOIN
(SELECT uid, points FROM top ORDER BY points DESC LIMIT 2) as p
ON u.uid=p.uid
GROUP BY 1,2
ORDER BY points2
--
Dmitry
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
20150
|
|