0

我的问题是我想从 tbl_one 查询 x 行并遍历结果并将值插入其他表

select id as user_id, p_id from users where b_id = 0 // this will give me let's say 10 rows

现在我想使用每一行插入到地址表中

insert into addresses (user_id, passenger_id, address_type, address_line1, city, country) value (user_id, passenger_id, 'Test street address', 'XXX', "XX")

我怎么能在mysql中做到这一点。尝试从https://dev.mysql.com/doc/refman/5.7/en/loop.html搜索 mysql 文档,但是解释的循环逻辑非常静态,我不明白。

4

2 回答 2

0

如果您想将 address_type 等其他列保持为静态,则可以使用以下查询:

INSERT INTO addresses (user_id, passenger_id, address_type, address_line1, city, country) 
SELECT id, p_id, "Test Address Type", 'Test Address', 'Test City', 'Test Country')
FROM users 
WHERE b_id = 0 
于 2017-10-12T11:20:42.417 回答
0

使用 INSERT INTO SELECT 语句:

INSERT INTO addresses (user_id, passenger_id, address_type, address_line1, city, country) 
SELECT id, p_id, address_type, 'Test street address', 'XXX', 'XX')
FROM users 
WHERE b_id = 0 
于 2017-10-12T11:19:25.737 回答