我需要在mysql表中插入50行。除主键外,它们应完全相同。
是否有可以执行此操作的查询?
答案 0 :(得分:2)
只需使用while循环:
declare var1 int
select var1 = 0
BEGIN
WHILE (var1 < 50) DO
insert...
Select var1 = var1 + 1
END WHILE;
END
答案 1 :(得分:0)
残酷而有效:
INSERT INTO MyTable (data, num)
SELECT 'textdata' as data, 1234 as num
FROM
( SELECT 1
UNION ALL
SELECT 1
) as a,
( SELECT 1
UNION ALL
SELECT 1
UNION ALL
SELECT 1
UNION ALL
SELECT 1
UNION ALL
SELECT 1
) as b,
( SELECT 1
UNION ALL
SELECT 1
UNION ALL
SELECT 1
UNION ALL
SELECT 1
UNION ALL
SELECT 1
) as c
答案 2 :(得分:0)
如果您有一个随机存在的表,其行数多于您想要插入的行,则可以执行以下操作:
插入table1(row1,row2),从table2 limit 50中选择相同的value1 ,相同的value2
e.g:
插入table1(myint,mystr,mystr2)选择123,“你好”,“世界” 来自table2 limit 50
- 请注意,您实际上并未从table2中插入任何内容