對于 sql 中的批量插入數據,提供了 4 種主要方法:1. insert into 語句 2. insert 語句與 select 3. load data infile 語句 4. bulk insert 語句(僅 microsoft sql server)。選擇合適的方法取決于數據量、數據格式和插入速度要求。
SQL 批量插入數據方法
SQL 中提供了以下幾種批量插入數據的方法:
1. INSERT INTO 語句
INSERT INTO 語句可以一次插入多行數據,格式如下:
INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...), (value3, value4, ...), ...;
登錄后復制
例如,向 customers 表中插入兩行數據:
INSERT INTO customers (name, email) VALUES ('John Doe', '[email protected]'), ('Jane Smith', '[email protected]');
登錄后復制
2. INSERT 語句與 SELECT
INSERT 語句也可以與 SELECT 語句一起使用從另一個表中批量插入數據,格式如下:
INSERT INTO table_name (column1, column2, ...) SELECT column1, column2, ... FROM other_table;
登錄后復制
例如,從 orders 表中將所有訂單插入到 order_details 表中:
INSERT INTO order_details (order_id, product_id, quantity) SELECT order_id, product_id, quantity FROM orders;
登錄后復制
3. 使用 LOAD DATA INFILE 語句
LOAD DATA INFILE 語句可以從外部文件中批量加載數據,格式如下:
LOAD DATA INFILE 'file_path' INTO TABLE table_name (column1, column2, ...);
登錄后復制
例如,從名為 customers.csv 的 CSV 文件中將數據加載到 customers 表中:
LOAD DATA INFILE 'customers.csv' INTO TABLE customers (name, email);
登錄后復制
4. 使用 BULK INSERT 語句(僅 Microsoft SQL Server)
BULK INSERT 語句是 Microsoft SQL Server 中批量插入數據的優化方法,格式如下:
BULK INSERT table_name FROM 'file_path' WITH (FORMAT = 'format_type');
登錄后復制
其中 format_type 可以是 CSV, XML, JSON 或其他格式。
選擇合適的方法
選擇批量插入數據的方法取決于以下因素:
數據量
數據格式
插入速度要求