在连接期间避免重复

时间:2016-07-27 08:40:48

标签: php mysql join

我们假设我有这个数据库:

table1:
- id
- name

table2:
-id
-name
-date
-table1id

如果我做的话

SELECT table1.id, table1.name,table2.date
FROM table1
LEFT JOIN table2 ON table1.id = table2.table1id

我将有2行。

我只想加入table2中最新日期的行。有没有办法通过MySQL做到这一点,或者我必须在查询之后使用像PHP这样的东西吗?

好的我想要一行,包括table1.id,table1.name和来自table2的链接条目的最新日期。

1 个答案:

答案 0 :(得分:2)

使用GROUP BY和聚合函数MAX

SELECT table1.id, table1.name, MAX(table2.date) AS `date`
FROM table1
LEFT JOIN table2 ON table1.id = table2.table1id
GROUP BY table1.id