簡體   English   中英

如何在同一個mysql查詢中SELECT + INSERT?

[英]How can I SELECT+INSERT in the same mysql query?

我有一個PHP腳本處理來自mysql表“keywords”(列:id - keyword)的關鍵字然后它將數據保存到另一個表“data”(列:id [外鍵關鍵字.id] - dataname - datavalue)。

我的問題是,當腳本准備好保存數據時,我只有關鍵字而不是id。

那么有一種方法可以獲取關鍵字id並將數據保存在一個mysql查詢中嗎? (我的意思是不必像關鍵字=關鍵字的關鍵字那樣執行SELECT id,然后為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'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM