关于sql:将多行插入单列

Insert multiple rows into single column

我是SQL的新手,(使用SQL 2008 R2),我在将多行插入单个列时遇到问题。

我有一个名为Data的表,这就是我正在尝试的

1
2
INSERT INTO DATA ( Col1 ) VALUES
('Hello', 'World')

该代码来自这个问题,但它像我在网上找到的许多其他例子一样使用2列,我只想使用1.我做错了什么?

谢谢


插入特定列的值与其他列保持相同: -

1
2
INSERT INTO `table_name`(col1,col2,col3)
   VALUES (1,'val1',0),(1,'val2',0),(1,'val3',0)


要仅插入一列,请仅使用一个数据:

1
2
INSERT INTO DATA ( Col1 ) VALUES
('Hello World');

或者,要插入多个记录,请分隔插入:

1
2
3
INSERT INTO DATA ( Col1 ) VALUES
('Hello'),
('World');


我相信这应该适用于插入多行:

1
2
INSERT INTO DATA ( Col1 ) VALUES
('Hello'), ('World'),...

另一种方法是使用union:

1
2
3
4
INSERT INTO DATA ( Col1 )
SELECT 'hello'
UNION
SELECT 'world'


如果您的DBMS支持表示法,则每行需要一组单独的括号:

1
INSERT INTO DATA(Col1) VALUES ('Hello'), ('World');

交叉引用的问题显示了插入两列的示例。

或者,每个SQL DBMS都支持使用单独语句的表示法,每个语句要插入一行:

1
2
INSERT INTO DATA (Col1) VALUES ('Hello');
INSERT INTO DATA (Col1) VALUES ('World');

1
  INSERT INTO DATA ( Col1 ) VALUES ('Hello'), ('World')


在该代码中,您插入两个列值。
你可以试试这个

1
2
   INSERT INTO DATA ( Col1 ) VALUES ('Hello'),
   INSERT INTO DATA ( Col1 ) VALUES ('World')

1
INSERT INTO hr.employees (location_id) VALUE (1000) WHERE first_name LIKE '%D%';

如果本声明中有任何问题,请告诉我。