java如何获取列的最后一个值
如何检索数据库中最后输入的列值(MS ACCESS 2007)
我使用了以下代码
String sql = "SELECT Last(RegNumber) FROM Death ";
但它在MS ACCESS中不起作用,当我运行程序时,会产生如下错误:
java.sql.SQLException: Column not found
但我在数据库中创建了一个列RegNumber
我正在使用Java进行编程,其中我使用了这个查询
编辑:
RegNumber是字符串形式而不是整数形式,因此我不能使用DESC或ASC
请帮帮我
# 1 楼答案
根据您喜欢的标准对表进行排序,并使用
SELECT TOP 1 * FROM myTable ORDER BY RegNumber ASC
或者
ORDER BY incrementingId DESC
基本上,对于您所说的“最后输入的列”(我假设它是指行,而不是列),排序必须有一定的逻辑顺序
编辑:你的函数在Access中是正确的,应该返回正确的值。然而,Java可能无法正确解释它。在Access原生查询中尝试查询,然后尝试调试Java。如果java不支持这个函数,那么考虑使用java中的内置结果()函数。sql
# 2 楼答案
下面将返回最后一个和最新的RegNumber:
# 3 楼答案
这取决于您的数据库结构
通常,在表中会出现一些唯一标识符,如果您确定它总是出现在数据库中,那么可以使用函数
MAX
来检索标识符,然后检索整行另一种情况是只对描述列创建时间的列添加时间戳,如果序列真的很关键,那么这种方法就满足了
id
应该足够了# 4 楼答案
我不知道
MS ACCESS
中的last()
函数,但我有另一个想法:通常每个
table
都会自动生成一个id
,因此您可以对其进行排序,并从结果集中获得第一条记录,如下所示: