我用的是delphi自带的paratox数据库,glf_enddat是管理费截止日期,在glfxx表中,表中数据举例:2008-12-31 
Select a.kh_tel From khxx a INNER JOIN glfxx b ON a.kh_id=b.kh_id 
Where... 
where后面判断数据库中日期在一年后是否会过期,请问怎么写?
问题补充:我通过BDE,用数据库别名连接数据库.用的控件是QUERY 

解决方案 »

  1.   

    glf_enddat是管理费截止日期,如果一年后日期和它相同不久过期了。。
    就是说,如果glf_enddat减去现在日期小于一年就算是快归期客户。这里得充分考虑到paratox数据库日期型的格式转换
      

  2.   

    Select a.kh_tel From khxx a INNER JOIN glfxx b ON a.kh_id=b.kh_id  
    Where DATEADD(year,1,GetDate())<glf_enddat
      

  3.   

    这个是不行地。。刚看了本书。。已经解决问题了没我想的那么难。。不过这分该给谁呢?要不再问个问题
    三张表:khxx-客户信息表,glfxx-管理费信息表,jsxx-接收信息表
    一个带回三个参数的函数
    Modem1recvMsg(ASender: TObject; const phoneNO, recvTime,MsgContent: WideString); 
    带回的三个参数分别是:phoneNO 手机号 recvTime 接收时间 MsgContent 消息内容我想在procedure TForm_main.Modem1recvMsg(ASender: TObject; const phoneNO, recvTime,
      MsgContent: WideString); 中实现自动回复功能。
    当接收到一个新消息,截取短信内容(MsgContent)的前13位,把它和数据库表khxx中的KH_ID比较,由此判断是否是系统用户,然后截取短信内容回复消息(MsgContent)的第14、15位,根据规则返回消息。规则是:01回复khxx表中的该客户信息,02回复glfxx表中的该客户的数据,若非01和02,则回复“您的输入格式有误!正确格式为:客户ID号+01 查询客户信息;客户ID号+02 查询管理费信息”
    每次接收到查询,都要在表jsxx中插入相应查询记录。即把三个参数写入jsxx表中。其中回复消息的函数为:modem1.sendMsg(phoneNO,所要返回的消息字符串)恳求各位大侠帮助!
      

  4.   

    使用pos,delete,copy三个函数组合来做,或pos,copy两个也可以