我是 SQL 新手(使用 SQL 2008 R2),我无法将多行插入单个列。
我有一个名为的表Data
,这就是我正在尝试的
INSERT INTO Data ( Col1 ) VALUES
('Hello', 'World')
该代码取自this question,但它与我在网上找到的许多其他示例一样使用2列,我只想使用1。我做错了什么?
谢谢
我是 SQL 新手(使用 SQL 2008 R2),我无法将多行插入单个列。
我有一个名为的表Data
,这就是我正在尝试的
INSERT INTO Data ( Col1 ) VALUES
('Hello', 'World')
该代码取自this question,但它与我在网上找到的许多其他示例一样使用2列,我只想使用1。我做错了什么?
谢谢
插入特定列的值与其他列保持不变: -
INSERT INTO `table_name`(col1,col2,col3)
VALUES (1,'val1',0),(1,'val2',0),(1,'val3',0)
要仅插入一列,请仅使用一条数据:
INSERT INTO Data ( Col1 ) VALUES
('Hello World');
或者,要插入多条记录,请将插入分开:
INSERT INTO Data ( Col1 ) VALUES
('Hello'),
('World');
我相信这应该适用于插入多行:
INSERT INTO Data ( Col1 ) VALUES
('Hello'), ('World'),...
另一种方法是使用联合:
INSERT INTO Data ( Col1 )
select 'hello'
union
select 'world'
如果您的 DBMS 支持该表示法,则每行都需要一组单独的括号:
INSERT INTO Data(Col1) VALUES ('Hello'), ('World');
交叉引用的问题显示了插入两列的示例。
或者,每个 SQL DBMS 都支持使用单独语句的表示法,一个用于插入的每一行:
INSERT INTO Data (Col1) VALUES ('Hello');
INSERT INTO Data (Col1) VALUES ('World');
INSERT INTO Data ( Col1 ) VALUES ('Hello'), ('World')
在该代码中,您将插入两列值。你可以试试这个
INSERT INTO Data ( Col1 ) VALUES ('Hello'),
INSERT INTO Data ( Col1 ) VALUES ('World')
请确保其他列不受限制接受Not null
值,因此在表中创建列时只需忽略“Not Null”语法。例如
Create Table Table_Name(
col1 DataType,
col2 DataType);
然后,您可以在您想要的任何列中插入多个行值。例如:
Insert Into TableName(columnname)
values
(x),
(y),
(z);
等等……</p>
希望这可以帮助。
INSERT INTO hr.employees (location_id) VALUE (1000) WHERE first_name LIKE '%D%';
让我知道此声明是否有任何问题。