Tạo Bảng Mới Dựa Trên Kết Quả Câu Lệnh Truy Vấn CREATE TABLE ...

1. Giới thiệu CTAS

Trong các RDBMS như Oracle, PostgreSQL, nếu bạn muốn tạo ra 1 bảng copy của 1 bảng khác, giải pháp là CREATE TABLE AS SELECT (CTAS)

 

2. Tạo một bảng copy của 1 bảng khác

Cú pháp:

create table <table mới> as select * from <table gốc>

VD: Giả sử tôi muốn tạo ra một bảng khach_hang_bk với cấu trúc và dữ liệu giống hệt bảng khach_hang , tôi thực hiện câu lệnh như sau:

$ create table khach_hang_bk as select * from khach_hang; CREATE TABLE

3. Tạo một bảng mới với cấu trúc giống hệt bảng gốc

Bây giờ, tôi muốn tạo ra 1 bảng mới với cấu trúc giống hệt bảng gốc, nhưng lại là bảng trống, không có dữ liệu. Với 1 chút sáng tạo, tôi sẽ thực hiện việc đó cũng bằng câu lệnh CTAS

create table khach_hang_bk as select * from khach_hang where 1=0;

Trong đó: Điều kiện 1=0 trả về FALSE, tức là không có dữ liệu nào từ bảng khach_hang được lấy ra, chỉ có cấu trúc của khach_hang được tạo ra.

 

4. Tạo một bảng mới với 1 phần dữ liệu từ bảng gốc

Tương tự như vậy, tôi có thể chỉ tạo ra 1 bảng với 1 phần dữ liệu từ bảng gốc.

Giả sử: Tôi muốn tạo ra một bảng khach_hang_bk, trong đó, dữ liệu lấy từ bảng customer với điều kiện ngay_tham_gia = 2019

create table khach_hang_bk as select * from khach_hang where ngay_tham_gia = 2019;

 

5. Copy dữ liệu từ một bảng sang 1 bảng khác có cùng cấu trúc

Tình huống tiếp theo là, tôi cần copy 1 phần dữ liệu từ bảng khach_hang sang bảng khach_hang_bk đã tạo trước đó. Tôi sẽ làm như sau:

insert into khach_hang_bk as select * from khach_hang where ngay_tham_gia = 2020;

Nguồn: https://dangxuanduy.com/

Đọc thêm Quản lý người dùng hay role trong PostgreSQL

Hiện tại, tôi có tổ chức đều đặn các khóa học về quản trị Oracle Database, tôi sẽ để thông tin ở đây, để bạn nào quan tâm về lịch học cũng như chương trình học có thể theo dõi nhé.

KHOÁ DÀNH CHO NGƯỜI MỚI

KHÓA HỌC: QUẢN TRỊ ORACLE DATABASE THẬT LÀ ĐƠN GIẢN (ADMIN 1)

CÁC KHOÁ NÂNG CAO:

KHÓA HỌC ORACLE NÂNG CAO: QUẢN TRỊ KIẾN TRÚC MULTITENANT 12c

KHÓA HỌC ORACLE NÂNG CAO: QUẢN TRỊ HỆ THỐNG DATA GUARD

CÁC KHOÁ COMBO:

COMBO 1: ADMIN 1 + MULTITENANT 12c

COMBO 2: ADMIN 1 + DATA GUARD

COMBO 3: ADMIN 1 + MULTITENANT 12c + DATA GUARD

LỊCH HỌC:

Mời bạn xem tại đây: LỊCH HỌC CÁC LỚP ORACLE 

ĐĂNG KÝ:

https://forms.gle/MtCAoRQFenP886y79

Hãy tham gia group “Kho tài liệu kiến thức database” để cùng học hỏi và chia sẻ nhé.

Từ khóa » Cách Tạo Bảng Trong Database