我在MySQL中遇到问题。它涉及两个表,现在第一个表查询TrackingNo,然后其他表根据TrackingNo查询详细信息。 (请参见下面的示例图片)

>>表1



>>表2



如上图所示,表1返回77 records,然后这77条记录在表2上有详细信息,例如TrackNo。 xxx000001必须获取最新的日期/时间,它是2015-03-09 17:53:14,并且与其他TrackNo相同。

我的问题是应该使用什么查询?我认为,此问题在使用WITH CTE的SQL Server上很好用,但是我进行了一些研究,发现MySQL不支持WITH Clause

>>所需输出:

+-----------+----------+---------------------+
|  TrackNo  |  Status  |      Date/Time      |
+===========+==========+=====================+
| xxx000001 | Logged   | 2015-03-09 17:53:14 |
+-----------+----------+---------------------+
| xxx000002 | Prepped  | 2014-08-15 17:19:00 |
+-----------+----------+---------------------+
| xxx000003 | Analyzed | 2014-10-10 11:12:00 |
+-----------+----------+---------------------+


任何建议和替代品都将不胜感激!

提前致谢!

最佳答案

尝试这个:

SELECT
   t2.TrackNo,
   t2.Status,
   MAX(t2.DateTime)
FROM Table1 t1, Table2 t2
WHERE t1.TrackNo = t2.TrackNo
GROUP BY t2.TrackNo

08-07 07:58