SELECT INTO trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách sử dụng câu lệnh SELECT INTO trong SQL Server để sao chép bảng.

Giới thiệu về câu lệnh SELECT INTO trong SQL Server

Câu lệnh SELECT INTO tạo một bảng mớithêm các hàng từ truy vấn vào đó.

Câu lệnh SELECT INTO sau tạo bảng destination và sao chép các hàng thỏa mãn điều kiện WHERE từ bảng source này sang bảng destination:

SELECT 
    select_list
INTO 
    destination
FROM 
    source
[WHERE condition]

Nếu bạn muốn sao chép một phần dữ liệu từ bảng source, bạn sử dụng mệnh đề WHERE để chỉ định những hàng cần sao chép. Tương tự, bạn có thể chỉ định cột nào từ bảng source để sao chép vào bảng destination bằng cách chỉ định chúng trong danh sách chọn.

Lưu ý rằng câu lệnh SELECT INTO không sao chép các ràng buộc như khóa chính và các chỉ mục từ bảng source vào bảng destination.

Ví dụ về câu lệnh SELECT INTO trong SQL Server

Hãy lấy một số ví dụ về việc sử dụng câu lệnh SELECT INTO.

Sử dụng câu lệnh SELECT INTO để sao chép bảng trong cùng một cơ sở dữ liệu

Đầu tiên, hãy tạo một lược đồ mới để lưu trữ bảng mới.

CREATE SCHEMA marketing;
GO

Thứ hai, tạo bảng marketing.customers giống như bảng sales.customers và sao chép tất cả các hàng từ bảng sales.customers vào bảng marketing.customers:

SELECT *
INTO marketing.customers
FROM sales.customers;

Thứ ba, truy vấn dữ liệu từ bảng marketing.customers để xác minh bản sao:

SELECT *
FROM marketing.customers;

Hình ảnh sau đây cho thấy đầu ra một phần:

Sử dụng câu lệnh SELECT INTO để sao chép bảng trong cùng một cơ sở dữ liệu trong SQL Server

Sử dụng câu lệnh SELECT INTO để sao chép bảng trên các cơ sở dữ liệu

Đầu tiên, hãy tạo một cơ sở dữ liệu mới có tên TestDb để thử nghiệm:

CREATE DATABASE TestDb;
GO

Thứ hai, sao chép bảng sales.customers từ cơ sở dữ liệu hiện tại (BikeStores) vào bảng TestDb.dbo.customers. Lần này, chúng ta chỉ sao chép thông tin định danh khách hàng, họ, tên và email của những khách hàng sống tại California:

SELECT    
    customer_id, 
    first_name, 
    last_name, 
    email
INTO 
    TestDb.dbo.customers
FROM    
    sales.customers
WHERE 
    state = 'CA';

Thứ ba, truy vấn dữ liệu từ bảng TestDb.dbo.customers để xác minh bản sao:

SELECT * 
FROM TestDb.dbo.customers;

Đây là kết quả một phần của truy vấn:

Trong hướng dẫn này, bạn đã học cách sử dụng câu lệnh SELECT INTO trong SQL Server để sao chép một bảng trong cùng một cơ sở dữ liệu hoặc trên các cơ sở dữ liệu khác nhau.

SQL ServerĐịnh nghĩa dữ liệu trong SQL Server
Bài Viết Liên Quan:
GUID trong SQL Server
Trung Nguyen 12/03/2022
GUID trong SQL Server

Trong hướng dẫn này, bạn sẽ tìm hiểu về GUID trong SQL Server và cách sử dụng hàm NEWID() để tạo giá trị GUID.

Kiểu dữ liệu DATETIMEOFFSET trong SQL Server
Trung Nguyen 12/03/2022
Kiểu dữ liệu DATETIMEOFFSET trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách sử dụng kiểu dữ liệu DATETIMEOFFSET trong SQL Server để thao tác datetime với múi giờ.

Kiểu dữ liệu TIME trong SQL Server
Trung Nguyen 12/03/2022
Kiểu dữ liệu TIME trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách lưu trữ thời gian trong ngày trong cơ sở dữ liệu bằng cách sử dụng kiểu dữ liệu TIME trong SQL Server.

Kiểu dữ liệu DATE trong SQL Server
Trung Nguyen 12/03/2022
Kiểu dữ liệu DATE trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách sử dụng kiểu dữ liệu DATE trong SQL Server để lưu trữ dữ liệu ngày tháng trong một bảng.