我在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