在 MySQL 中使用子查询进行多次插入
Multiple inserts using subquery in MySQL
我有 2 个 MySQL 表:wp_posts 和 wp_postmeta。我想在 wp_postmeta 中插入多个值,这些值由 wp_posts.
返回的行数决定
我正在使用这个查询:
INSERT INTO
wp_postmeta (post_id, meta_key, meta_value)
VALUES
(
(SELECT ID
FROM wp_posts
WHERE
post_title
LIKE '%lorem ipsum%'
AND post_status = 'publish'
), '_tribe_ticket_header', 11719
);
这个查询的objective是在wp_postmeta中多次插入子查询中给定的ID,一个固定的字符串和另一个固定的id。
查询返回:子查询 returns 多于 1 行。
我该怎么做?
使用 INSERT...SELECT 语句从另一个表中插入数据。
试试这个:
INSERT INTO wp_postmeta (post_id, meta_key, meta_value)
SELECT ID, '_tribe_ticket_header', 11719
FROM wp_posts
WHERE post_title LIKE '%lorem ipsum%' AND post_status = 'publish'
我有 2 个 MySQL 表:wp_posts 和 wp_postmeta。我想在 wp_postmeta 中插入多个值,这些值由 wp_posts.
返回的行数决定我正在使用这个查询:
INSERT INTO
wp_postmeta (post_id, meta_key, meta_value)
VALUES
(
(SELECT ID
FROM wp_posts
WHERE
post_title
LIKE '%lorem ipsum%'
AND post_status = 'publish'
), '_tribe_ticket_header', 11719
);
这个查询的objective是在wp_postmeta中多次插入子查询中给定的ID,一个固定的字符串和另一个固定的id。
查询返回:子查询 returns 多于 1 行。
我该怎么做?
使用 INSERT...SELECT 语句从另一个表中插入数据。
试试这个:
INSERT INTO wp_postmeta (post_id, meta_key, meta_value)
SELECT ID, '_tribe_ticket_header', 11719
FROM wp_posts
WHERE post_title LIKE '%lorem ipsum%' AND post_status = 'publish'