我有一個大的插入查詢是這樣的:插入給定的值和多行從相關表
INSERT INTO video_tags
(vid_id, tag_id)
VALUES
(1,7),
(2,46),
(2,52) Etc. Etc.
但是我沒有tag_ids插入,只有標籤的字符串。因此,我需要在插入標籤時查找標籤ID。標籤被存儲在查找表中有兩列:
+-----+---------+
| id | int |
| tag | varchar |
+-----+---------+
我想要做這樣的事情:
INSERT INTO video_tags
(vid_id, tag_id)
VALUES
(1, SELECT id FROM tags WHERE tag = 'banana'),
(2, SELECT id FROM tags WHERE tag = 'tree')
(2, SELECT id FROM tags WHERE tag = 'chimps')
...但是,這並不工作,反正看起來繁瑣,效率低下。
我也看到這種情況:
INSERT INTO video_tags
(vid_id, tag_id)
VALUES
SELECT '1', id FROM tags WHERE tag = 'banana')
...但我不能得到這個與多個選擇工作。
如何製造具有你'vid_id's和標籤的字符串表,然後做一些像'insert into ... from(select vid_id,tag_id' –
)除非我誤解你,否則我有這樣一個表,它是我試圖插入值的那個表 –
你插入的那個沒有'vid_id's和標籤字符串。它有'vid_id's和'tag_id's。 –