解决这种问题的办法,最简单的方法就是,在中要有一个日期时间项,存放记录建立的时间.查询时就可以用:
select item_name from table_name where edate in
(select max(edate) from table_name)

解决方案 »

  1.   

    1、如果这个字段是线性增长的,你可以select max(Field) from table
    2、如果这个字段不是线性增长的,你建表时加一个自动增长的字段A, 然后
    select top 1 field, A from Table order by A DESC
      

  2.   

    表里有线性增长的字段,也有时间属性列,我也知道楼上二位说的办法我的目的是想取最新一条记录的一个属性值,付给另一个表的一个新记录。但问题是这样的操作几乎每过一秒就要进行一次,而且数据库在不断的增长,我怕这样开始还可以,但后来就
    注:我用的是 ADO 数据库接口程序来控制数据的插入
      

  3.   

    麻烦firedragoninhell(地狱炎龙) 给解释一下,我没用过触发器,谢谢;]
      

  4.   

    好的。
    你先看看我写的例子,再看一看联机文档吧。
    两个表:表a,表b,要求表a 新增记录时同时给表b新增一条记录,用触发器实现:
    CREATE TRIGGER test_trigger 
    ON a
    FOR INSERT
    AS
      INSERT INTO b FROM INSERTED VALUE(...,'INSERTED.field_name',...)
    GOinserted表是触发器维护的特殊表。
    触发器的具体用法在联机文档的索引中输入create trigger可查到详尽的用法。
      

  5.   

    TO:stonegem(gem) ,你好^_^1、如果这个字段是线性增长的,你可以select max(Field) from table
    2、如果这个字段不是线性增长的,你建表时加一个自动增长的字段A, 然后
    select top 1 field, A from Table order by A DESC第二句是什么意思?我的表里有一个自增量步长为1的属性列,我想取出最新一条记录,也就是最大的那个数值,但是我害怕表的不断增大会影响到速度,
    那么第二句的意思是直接找到最大值吗?还是要象MAX()一样的计算? “top 1 ”和 “DESC”分别是什么意思?问题比较乱,麻烦你了,谢谢 ^_^
      

  6.   

    谢谢firedragoninhell(地狱炎龙) ,非常感谢!!!这样的方法和我意愿中的方法很符合,我去试一下^_^
      

  7.   

    TOP 1指的是只取第一条记录。 DESC指的是按降序排序。
    A是自动增长的,按A降序排序的第一条记录自然就是最新的那条记录了。
      

  8.   

    Top 1 指只取第一条记录。 DESC 指按降序排序。 而A是自动增长的, 对A按降序排序的第一条记录不就是最新的那条记录吗?!哈哈。 我刚刚换了一个呢称。