我是新来的,但我有一个小问题。从表中选择最小日期从最大ID
我有此表(例如)
id | client| date
------------------------------
7 | v1 | 2015-05-20
6 | v1 | 2015-05-20
5 | v1 | 2015-05-01
4 | v1 | 2015-03-05
3 | v2 | 2015-02-02
2 | v3 | 2015-01-30
1 | v1 | 2015-01-01
我需要第一行从最后一个客户端,这种方式是客户端V1,但是当我选择分钟日期结果是从ID = 7 V1 ,但我不需要这个ID。
我需要ID 4,因为是最后一个客户端的第一个(旧的)ID。
我需要从该结果查询。
我使用此查询:
$re=mysql_query('SELECT traffic.*, client.alias FROM traffic INNER JOIN service ON traffic.service_id = service.service_id INNER JOIN client ON service.client_id= client.client_id WHERE vehicle="'.$_GET['s'].'" AND client.alias = "'.$Days1.'" GROUP BY client.alias ORDER BY traffic.date ASC LIMIT 1');
我的表是:
mysql> select traffic_id, service_id, date, vehicle from traffic limit 5;
+-------------+-------------+---------------------+----------------+
| traffic_id | service_id | date | vehicle |
+-------------+-------------+---------------------+----------------+
| 1057967 | 1106746 | 2012-01-02 06:35:23 | 2816 |
| 1057968 | 1106747 | 2012-01-02 06:35:55 | 2817 |
| 1057969 | 1106748 | 2012-01-02 06:36:11 | 48789 |
| 1057970 | 1106749 | 2012-01-02 06:37:27 | 48888 |
| 1057971 | 1106750 | 2012-01-02 06:37:59 | 48887 |
+-------------+-------------+---------------------+----------------+
5 rows in set (0.00 sec)
mysql> select service_id, client_id from service limit 5;
+-------------+------------+
| service_id | client_id |
+-------------+------------+
| 1106746 | 1 |
| 1106747 | 2 |
| 1106748 | 2 |
| 1106749 | 3 |
| 1106750 | 4 |
+-------------+------------+
5 rows in set (0.02 sec)
mysql> select client_id, alias from client limit 5;
+------------+------------+
| client_id | alias |
+------------+------------+
| 1 | EXPRESS |
| 2 | CONWAY |
| 3 | ACC |
| 4 | GO |
| 5 | ACCEL |
+------------+------------+
5 rows in set (0.02 sec)
有什么建议?
如果两个用户共享MIN(日期)(就像他们共享MAX(日期)) – Strawberry
哪些用户?或者你的意思是客户 – wearedoom
是 - 客户。 – Strawberry