【发布时间】:2010-05-26 20:06:44
【问题描述】:
I have 4 tables: tempTBL, linksTBL and categoryTBL, extra
在我的 tempTBL 上,我有:ID、名称、url、cat、isinserted 列 在我的链接TBL 我有:ID、名称、别名列 在我的 categoryTBL 上,我有:cl_id、link_id、cat_id 在我的 extraTBL 上,我有:id、link_id、值
如何执行单个查询以从 tempTBL 中选择 isinsrted = 0 的所有项目,然后将它们插入到 linksTBL 中,对于插入的每条记录,拾取 ID(这是主要的),然后将该 ID 插入到 cat_id = 88 的 categoryTBL 中。之后为 link_id 插入 extraTBL ID,为 value 插入 url。
我知道这很令人困惑,无论如何我都会发布这个......
这是我目前所拥有的:
INSERT IGNORE INTO linksTBL (link_id,link_name,alias)
VALUES(NULL,'tex2','hello'); # generate ID by inserting NULL
INSERT INTO categoryTBL (link_id,cat_id) 值(LAST_INSERT_ID(),'88'); # 在第二个表中使用 ID
我想在这里添加它只选择 isinserted = 0 的项目并插入那些记录,并且一旦插入,就会将 isinserted 更改为 1,因此下次运行时,它不会再次添加它们。
【问题讨论】: