我在ACCESS 中要删除一个表中的数据,它的条件是其记录在我一个SQL查询出来的数据中,我用的语句如下:但好像显示它不能做到,请各位指点.
delete tbbilltmp.* from tbbilltmp where   not exists  (SELECT tbbilltmp.*
FROM tbbilltmp, tbplan
WHERE [TBBILLTMP].[fdid]=[tbplan].[fdid] And DATEVALUE([TBBILLTMP].[FDDATE])=DATEVALUE([TBPLAN].[FDdate]) And timevalue([tbplan].[FDintime])>=timevalue("18:00") And timevalue([tbplan].[FDouttime])>=timevalue("18:00"))

解决方案 »

  1.   

    delete tbbilltmp
    FROM tbbilltmp, tbplan
    WHERE [TBBILLTMP].[fdid]=[tbplan].[fdid] And DATEVALUE([TBBILLTMP].[FDDATE])=DATEVALUE([TBPLAN].[FDdate]) And timevalue([tbplan].[FDintime])>=timevalue("18:00") And timevalue([tbplan].[FDouttime])>=timevalue("18:00"))条件可能反了:delete tbbilltmp
    FROM tbbilltmp, tbplan
    WHERE not
    (
    [TBBILLTMP].[fdid]=[tbplan].[fdid] And DATEVALUE([TBBILLTMP].[FDDATE])=DATEVALUE([TBPLAN].[FDdate]) And timevalue([tbplan].[FDintime])>=timevalue("18:00") And timevalue([tbplan].[FDouttime])>=timevalue("18:00"))
    )
      

  2.   

    delete tbbilltmp.*
    FROM tbbilltmp, tbplan
    WHERE not
    (
    [TBBILLTMP].[fdid]=[tbplan].[fdid] And DATEVALUE([TBBILLTMP].[FDDATE])=DATEVALUE([TBPLAN].[FDdate]) And timevalue([tbplan].[FDintime])>=timevalue("18:00") And timevalue([tbplan].[FDouttime])>=timevalue("18:00")
    )
    系统提示:无法从特定的资料表中删除。
    好像还有问题。请指教!!
      

  3.   

    delete tbbilltmp.*
    改为delete tbbilltmp
      

  4.   

    我可以用下面的语句将我要删除的数据查询出来,但不知如何将其删除,请指教!
    to:
    select tbbilltmp.*
    FROM tbbilltmp,tbplan
    WHERE 
    (
    [TBBILLTMP].[fdid]=[tbplan].[fdid] And DATEVALUE([TBBILLTMP].[FDDATE])=DATEVALUE([TBPLAN].[FDdate]) And timevalue([tbplan].[FDintime])>=timevalue("18:00") And timevalue([tbplan].[FDouttime])>=timevalue("18:00")
    )
      

  5.   

    SQLSvr下这样的语法是可行的。
    这样改?delete from tbbilltmp
    where fdid in (
    select tbbilltmp.fdid
    FROM tbbilltmp,tbplan
    WHERE 
    (
    [TBBILLTMP].[fdid]=[tbplan].[fdid] And DATEVALUE([TBBILLTMP].[FDDATE])=DATEVALUE([TBPLAN].[FDdate]) And timevalue([tbplan].[FDintime])>=timevalue("18:00") And timevalue([tbplan].[FDouttime])>=timevalue("18:00")
    )
    )