我有一个 php 脚本,它处理来自 mysql 表“keywords”(列:id - 关键字)的关键字,然后将数据保存到另一个表“data”(列:id [foreign key keywords.id] - dataname -数据值)。
我的问题是,当脚本准备好保存数据时,我只有关键字,没有 id。
那么有没有一种方法可以获取关键字 id 并将数据保存在一个 mysql 查询中? (我的意思是无需执行诸如 SELECT id from keywords where keyword = keyword 之类的操作,然后针对 INSERT 运行另一个查询。
最佳答案
如果选择表和修改表不同——你可以使用简单的嵌套查询:
INSERT INTO `data` (`id`, `dataname`) VALUES
(
(SELECT `id` FROM `keywords` WHERE `keyword` = 'keyworrrrrd'),
'blabla'
)
或
INSERT INTO `data` (`id`, `dataname`)
SELECT `id`, 'blabla' FROM `keywords` WHERE `keyword` = 'keyworrrrrd'
关于php - 如何在同一个 mysql 查询中使用 SELECT+INSERT?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3648856/