SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 21.05.2010 15:29:18

ivanz
Участник
Зарегистрирован: 21.05.2010
Сообщений: 21

Запрос (transactions)

Здравствуйте! Подскажите, пожалуйста, может кто-нибудь знает:

Есть таблица: money_transactions

id     sign     amount     details     userid     balance     date

1     +     10     Deposit funds     1            10     2010-05-18 17:03:01
2     +     10     Transfer funds     3            10     2010-05-18 17:06:01
3     -     10     Transfer funds     1            0     2010-05-18 17:06:01
4     +     0     Deposit funds     3            10     2010-05-18 17:08:23
5     +     1     Deposit funds     3            11     2010-05-18 17:15:58
6     +     10     Deposit funds     3            21     2010-05-18 17:20:29
7     +     1     Deposit funds     3            22     2010-05-18 17:23:06
8     +     798     Deposit funds     2            820     2010-05-18 17:24:09
9     +     12     Deposit funds     3            832     2010-05-18 17:25:59
10     +     12     Transfer funds    2           844     2010-05-18 17:26:46

Как, сделав запрос получить такую выборку:

userid     balance

1            10    
2             844
3             832

Т.е нужно получить конечный баланс каждого пользователя, который является последним по дате и ID.

Спасибо, большое!

Неактивен

 

#2 21.05.2010 16:08:15

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Запрос (transactions)

SELECT *
FROM money_transactions mt
JOIN (SELECT MAX(id) AS id FROM money_transactions GROUP BY userid) ids USING (id);

Неактивен

 

#3 24.05.2010 17:41:34

ivanz
Участник
Зарегистрирован: 21.05.2010
Сообщений: 21

Re: Запрос (transactions)

Спасибо большое все работает!

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson