作成した最初のSQLを使用できますが、すべてのユーザーが使用できます:
SELECT u.*, b.balance, b.date
FROM users u JOIN balance b ON u.id = b.userId
WHERE b.date = (SELECT MAX(date) FROM balance WHERE userId = u.id);
これは結果を得る最速の方法ではないかもしれませんが、必要なものを提供します。アプリのかなりの数の場所で同様のクエリを使用しています。