如何仅选择每个字段的一行?
如何仅选择每个字段的一行?
我有两个表Service
和Status
。Service表只有一个name
和一个id
字段。
Service表如下:
| id | name |
|----|-------|
| 1 | Test1 |
| 2 | Test2 |
Status表如下:
| id | status | service_id | timestamp |
|----|--------|------------|---------------------------|
| 1 | OK | 1 | October, 15 2015 09:03:07 |
| 2 | OK | 1 | October, 15 2015 09:08:07 |
| 3 | OK | 2 | October, 15 2015 10:05:23 |
| 4 | OK | 2 | October, 15 2015 10:15:23 |
我想要的结果是:
| id | name | status | timestamp |
|----|-------|--------|---------------------------|
| 1 | Test1 | OK | October, 15 2015 09:08:07 |
| 2 | Test2 | OK | October, 15 2015 10:15:23 |
即获取最新的Status和对应的Service数据。我尝试了以下语句:
SELECT ser.id, ser.name, a.status, a.timestamp from Service ser inner join (select * from status order by Status.timestamp DESC limit 1) as a on a.service_id = ser.id
但是我只得到了以下结果:
| id | name | status | timestamp |
|----|-------|--------|---------------------------|
| 2 | Test2 | OK | October, 15 2015 10:15:23 |
请问如何修改语句以获得我想要的结果呢?