MySQL -Присоединить 2 таблицы

У меня есть 2 таблицы :пользователи и баланс.

Я хочу объединить таблицы со всеми данными из пользовательской таблицы (все поля всех кортежей)с самой последней записью из балансовой таблицы (1 поле, связанное с идентификатором пользователя).

Вот структура таблиц:

баланс:

+---------+
| Field   |
+---------+
| dbid    |
| userId  |
| date    |
| balance |
+---------+

пользователи:

+-------------+
| Field       |
+-------------+
| dbid        |
| id          |
| fName       |
| sName       |
| schedName   |
| flexiLeave  |
| clockStatus |
+-------------+

Я пытался сделать это в течение нескольких часов, и самое близкое, что я могу сделать, это вернуть строку для одного пользователя:

SELECT u.*, b.balance, b.date FROM users u, balance b WHERE u.id = b.userId AND b.date = (SELECT MAX(date) FROM balance WHERE userId = 'A8126982');

Или я может выбрать всех пользователей, но не самую последнюю запись в таблице баланса:

SELECT u.*, b.balance, b.date FROM users u, balance b WHERE u.id = b.userId GROUP BY u.id;

Я перепробовал много разных запросов и, кажется, приближаюсь, но я просто не могу получить то, что хочу.

Будем признательны за любую помощь.

5
задан JohnFx 19 April 2012 в 14:40
поделиться