mysql 相同的人员有多条文件数据 连表查询如何只查询一条
时间: 2024-10-24 19:07:57 浏览: 23
当你在 MySQL 中遇到相同的人员有多条文件数据的情况,如果需要通过连表查询获取每个人员的唯一信息,你可以使用 `DISTINCT` 关键字或者 GROUP BY 子句结合聚合函数来达到目的。这里有两个常见的方式:
1. **使用 DISTINCT**:
```sql
SELECT DISTINCT person_id, file_data
FROM table1
FULL JOIN table2 ON table1.person_id = table2.person_id;
```
这将返回每个 person_id 对应的不同 file_data。
2. **使用 GROUP BY**:
```sql
SELECT person_id, MAX(file_data) as latest_file_data
FROM (
SELECT person_id, file_data
FROM table1
FULL JOIN table2 ON table1.person_id = table2.person_id
) AS subquery
GROUP BY person_id;
```
这里假设你想保留每人的最新文件数据,所以选择了 `MAX()` 函数,如果有多个文件且时间上存在先后,这个查询会返回每个人员最新的文件数据。
阅读全文