У меня есть 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;
Я перепробовал много разных запросов и, кажется, приближаюсь, но я просто не могу получить то, что хочу.
Будем признательны за любую помощь.