我目前正在尝试使用另一个表(tbl_siphon_req_info
)中的条件从表(tbl_siphon_PO
)中删除数据。我使用以下SQL查询来执行此操作,但它仍然无效:
DoCmd.RunSQL " DELETE tbl_siphon_req_info.* FROM tbl_siphon_req_info a, tbl_siphon_PO b WHERE Concat(a.ross_PO_nbr, a.ross_sku12) = Concat(b.PO_ID, Sbstr(bitem_id,1,12))"
如何更正并完成查询?
答案 0 :(得分:0)
并非所有数据库都支持与bootstrap.js
的连接,因此编写查询的典型方法是:
delete
注意:delete from tbl_siphon_req_info ri
where exists (select 1
from tbl_siphon_PO sp
where concat(ri.ross_PO_nbr, ri.ross_sku12) = Concat(sp.PO_ID, substr(bitem_id, 1, 12)
);
可能拼写为substr()
,具体取决于数据库。同样,substring()
在大多数数据库中都可用,中缀运算符也可用。
此外,编写concat()
子句的更典型方法是:
where
逻辑并不完全相同,但这可能是你的意图。
答案 1 :(得分:0)
这实际上取决于您使用的确切数据库。但你可以使用:
DELETE tbl_siphon_req_info, tbl_siphon_PO
FROM tbl_siphon_req_info AS a
LEFT JOIN tbl_siphon_PO AS b ON concat(a.ross_PO_nbr, a.ross_sku12) = concat(b.PO_ID, sbstr(bitem_id, 1, 12)