我在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"))
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"))
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"))
)
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")
)
系统提示:无法从特定的资料表中删除。
好像还有问题。请指教!!
改为delete tbbilltmp
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")
)
这样改?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")
)
)