Php MySQL:对于表中的每一行,从另一个表中获取数据

Php MySQL:对于表中的每一行,从另一个表中获取数据,php,mysql,Php,Mysql,我在MySQL中遇到了一个问题。它涉及两个表,现在第一个表查询TrackingNo,然后另一个表根据TrackingNo查询详细信息。请参见下面的示例图像 >>表1 >>表2 如上图所示,表1返回77条记录,而这77条记录在表2中有详细信息。例如,TrackNo。xxx000001必须获取最新日期/时间,即2015-03-09 17:53:14,其他轨道号上的日期/时间相同 我的问题是我应该使用什么查询?我认为,这个问题在使用WITH-CTE的SQL Server上非常有效,但我做了一些研究,发

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

>>表1

>>表2

如上图所示,表1返回77条记录,而这77条记录在表2中有详细信息。例如,TrackNo。xxx000001必须获取最新日期/时间,即2015-03-09 17:53:14,其他轨道号上的日期/时间相同

我的问题是我应该使用什么查询?我认为,这个问题在使用WITH-CTE的SQL Server上非常有效,但我做了一些研究,发现在MySQL中不支持WITH子句

>>期望输出:

任何建议和选择都将不胜感激

提前谢谢

试试这个:

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

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

在MYSQL中,我们有强大的操作称为连接。 可以使用JOIN根据两个表上相同的列获取两个表的输出

例如:

   SELECT 
   table2.TrackNo, table2.Status, MAX(table2.DateTime) 
FROM Table1 table1, Table2 table2
WHERE table1.TrackNo = table2.TrackNo 
GROUP BY table2.TrackNo;

在MYSQL中,我们有强大的操作称为连接。 可以使用JOIN根据两个表上相同的列获取两个表的输出

例如:

   SELECT 
   table2.TrackNo, table2.Status, MAX(table2.DateTime) 
FROM Table1 table1, Table2 table2
WHERE table1.TrackNo = table2.TrackNo 
GROUP BY table2.TrackNo;
选择*从TrackingNo作为t1,其中t1.date=选择maxt2.date从TrackingNo作为t2,其中t1.trackNo=t2.trackNo

选择*从TrackingNo作为t1,其中t1.date=选择maxt2.date从TrackingNo作为t2,其中t1.trackNo=t2.trackNo

您所需的输出字段轨迹与表1和表2所需的输出字段轨迹号没有区别与表1和表2不同您所需的输出字段轨迹与表1和表2相同