我在选择最新记录(最后导入的记录)时遇到一些问题 当我尝试从一个表中选择最后一条记录时,它并没有真正选择最后一条记录 例如,如果我现在运行这个:
SELECT * FROM Lat ORDER BY Lat DESC LIMIT 1
它会给我输出“XX.34148035”而不是“XX.34142197”(当我手动转到PMA的最后一页(7)时,我看到XX.34142197...)
所以我的想法是检查 A_I 选项并选择最高的 ID。 然后再次运行查询,
SELECT * FROM Lat ORDER BY ID DESC LIMIT 1
这次成功了,耶。 所以现在我对另一个表做了完全相同的事情,但是当我运行查询时:
SELECT * FROM (Lat, Lng) ORDER BY ID DESC LIMIT 1
我收到错误:
Column 'ID' in order clause is ambiguous
我可以理解,但不知道修复... 在此之后我陷入困境,谷歌搜索了很多,但它非常令人困惑...... 如果有人可以帮助我,或者给我提示,那就太好了...... 另外,我发现当我使用
SELECT * FROM Lat,Lng
输出为:
+-----+-------------+-----+------------+
| ID | Lat | ID | Lng |
+-----+-------------+-----+------------+
| 1 | XX.34123183 | 1 | XX.64095977 |
| 2 | XX.34128739 | 1 | XX.64095977 |
| 3 | XX.3412688 | 1 | XX.64095977 |
| 4 | XX.34127248 | 1 | XX.64095977 |
| 5 | XX.34126652 | 1 | XX.64095977 |
| 6 | XX.3412708 | 1 | XX.64095977 |
| 7 | 52.34127314 | 1 | XX.64095977 |
|//some record laters....(yes 181 is last)
| 179 | XX.34145865 | 1 | XX.64095977 |
| 180 | 52.34144137 | 1 | XX.64095977 |
| 181 | XX.34142197 | 1 | XX.64095977 |
| 1 | XX.34123183 | 2 | XX.64226005 |
| 2 | XX.34128739 | 2 | XX.64226005 |
| 3 | XX.3412688 | 2 | XX.64226005 |
| 4 | XX.34127248 | 2 | XX.64226005 |
我以为它会更像这样......
+-----+-------------+ +-----+-------------+
| ID | Lat | | ID | Lng |
+-----+-------------+ +-----+-------------+
| 1 | XX.34123183 | | 1 | XX.32535611 |
| 2 | XX.34128739 | | 2 | XX.32565655 |
| 3 | XX.3412688 | | 3 | XX.32525515 |
| 4 | XX.34127248 | | 4 | XX.325255555 |
我在这里做错了什么?
谢谢了!
最佳答案
SELECT
*
FROM
lat
JOIN
lng USING (id)
ORDER BY lat.id DESC
试试这个。您想要加入表格
关于php - 从Mysql中选择最新记录时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22868008/