这是我尝试过的,效果很好。。
$sql = "SELECT * FROM patient where id = (SELECT max(id) FROM patient)";
result = mysql_query($sql);
if (mysql_num_rows($result) > 0)
{
// output data of each row
while($row = mysql_fetch_assoc($result))
{
$patientid=$row["id"];
$patientname=$row["name"];
$patientrefer=$row["referto"];
$patientdisease=$row["disease"];
}
}
else
{
echo "0 results";
}
但每当我用替换查询时
$sql = "SELECT * FROM patient where id = LAST_INSERT_ID()";
它总是返回0
结果。
为了从表中获取最后(最新)记录,您可以将ORDER BY
与LIMIT
:一起进行递减
SELECT * FROM patient ORDER BY id DESC LIMIT 0,1
在这种情况下,您根本不需要LAST_INSERT_ID
。此外,对于并发插入,您无法通过使用LAST_INSERT_ID
来确保用户的最后一次插入确实是最新的插入。