我有一个带有user_ids的表,还有一个带有user_ids和其他数据的表(空)。
我想将所有ID插入空表。
我知道我可以用php脚本来做,甚至用
创建copy \ paste脚本insert into tableB values(x),(y),(z);
但是,我感兴趣的是,当我不提及每个值时,我可以以某种方式使用sql创建查询,更像是将所有选定的值复制到新表中。
像
insert into tableB values(select x from tableA); --not SINGLE x!
--ALL 'X' values returned in nested query...
答案 0 :(得分:6)
看看st
使用INSERT ... SELECT,您可以快速将多行插入表中 从一个或多个表。
语法
INSERT [LOW_PRIORITY | HIGH_PRIORITY] [IGNORE]
[INTO] tbl_name [(col_name,...)]
SELECT ...
[ ON DUPLICATE KEY UPDATE col_name=expr, ... ]
实施例
INSERT INTO tbl_temp2 (fld_id)
SELECT tbl_temp1.fld_order_id
FROM tbl_temp1 WHERE tbl_temp1.fld_order_id > 100;
答案 1 :(得分:2)
insert into tableB select x from tableA
答案 2 :(得分:1)
你走了:
Insert into tableB select col_nm from tableA
答案 3 :(得分:1)
以下是必须完成的工作:
inset into table B select col1,col2 from table A.
insert into table B values is used when you know the data e.g
insert into table B values('1','','30/06/1983')
答案 4 :(得分:0)
INSERT INTO tableB (x, y, z)
SELECT x, y, z
FROM `tableA`
WHERE `x` = '42'