sql 2000 里有一个表  
                          jilu
shenfenzhenghao      riqi                    shifoulishi 
(身份证号)                  (日期)                 (是否历史)
111111                  2014-01-01                 否
222222                  2014-01-02                否
111111                 2014-01-03                 是
333333                   2014-01-04              否
222222                  2014-01-05              是 解释下,表jilu 有三个字段,  前两个直接忽视具体内容好了。
每条记录是按序添加的,比如在添加2014-01-03 的111111 的时候,会自动检索2014-01-03 以前的纪录。如果有历史纪录的,则在shifoulishi  里面填  是       同理,2014-01-05 的222222的时候,因为在2014-01-02 出现过222222 了,那么是否历史 就是是了,, 求大神指点这个循环判断delphi怎么写

解决方案 »

  1.   

    shifoulishi这个记录的添写有两种方法。
    1、用程序判断,先Select * from jilu where shenfenzhenghao=?是否这空。来添写这个值。
    2、用数据库的表触发器来完成值的添写,在事件Insert Before事件里用游标来判断。
      

  2.   

    select count(*) from jilu
    返回值如果大于1就是有过记录,不需要自己在前台写循环,效率太低。
      

  3.   

    ,sql 能有哪些计算公式
      

  4.   

    insert into jilu(shenfenzhenghao,riqi,shifoulishi)  
    select '111111', '2015-01-01',(case when b.xx > 0 then '是' else '否' end) from
    (select count(1) as xx from jilu where shenfenzhenghao='111111') b
      

  5.   

    insert into t
    values(  新号,新日期,case when exists(select null from t where 号=新号 and 日期<新日期) then 是 else 否 end )