Php 如何使用最高的用户id左键连接选择值

Php 如何使用最高的用户id左键连接选择值,php,mysql,join,Php,Mysql,Join,这个问题和我之前的问题有关 我所做的更改是添加了用户id列(自动递增),并希望选择每个日期具有最高用户id的值 我有表loadhistory(希望“仅选择每个日期具有最高用户id的值”group by和order by date DESC.) 因此,在本例中,我想为2015-02-27选择150个,因为它在该日期具有最高的用户id,为2015-02-28选择50个 | user_id | customer_id | date | bal | 1 1

这个问题和我之前的问题有关

我所做的更改是添加了用户id列(自动递增),并希望选择每个日期具有最高用户id的值

我有表loadhistory(希望“仅选择每个日期具有最高用户id的值”group by和order by date DESC.) 因此,在本例中,我想为2015-02-27选择150个,因为它在该日期具有最高的用户id,为2015-02-28选择50个

| user_id | customer_id |     date    | bal |
    1           1         2015-02-27    100
    2           1         2015-02-27    150
    3           1         2015-02-28    150
    4           1         2015-02-28    50
和表transactionrecord(希望使用sum(bal)group by和order by date DESC汇总每个日期的值)

我想连接两个表,如下所示:

|    date    |   balance    |   amount paid   |
  2015-02-28       50               10
  2015-02-27       150              70
SELECT * FROM (SELECT * FROM `loadhistory` ORDER BY user_id DESC) history GROUP BY date
这是迄今为止的代码(我使用了我从上一个问题中获得的代码,并在新问题中对其进行了编辑,希望得到预期的结果,但没有)


请帮忙。提前感谢

MySQL使用第一行bygroup by,因此您必须先订购,然后才能使用group by,如下所示:

|    date    |   balance    |   amount paid   |
  2015-02-28       50               10
  2015-02-27       150              70
SELECT * FROM (SELECT * FROM `loadhistory` ORDER BY user_id DESC) history GROUP BY date
因此,您可以使用以下查询作为解决方案:

SELECT h.date,h.bal as balance, t.amount as 'amount paid' FROM 
  (SELECT * FROM (SELECT * FROM `loadhistory` ORDER BY user_id DESC) history GROUP BY date) as h
JOIN
  (SELECT SUM(bal) as amount, customer_id, date FROM `transactionrecord` GROUP BY date) as t
ON h.date = t.date AND h.customer_id = t.customer_id
ORDER BY date DESC