Cách tạo view và những lợi ích khi sử dụng

Blog / Tin công nghệ 22/12/2023
cach-tao-view-va-nhung-loi-ich-khi-su-dung
Phụ lục

Ở phần kiến thức hôm nay mình tiếp tục chia sẻ về VIEW, là một khái niệm nâng cao hơn so với các bài trước đây. Và kiến thức này cũng hay được sử dụng trong khi làm dự án.

View trong SQL là gì?

Là table ảo (virtual) dựa trên kết quả từ câu lệnh SQL SELECT. Và nó cũng có các dòng và cột nhưng là table thật. Vậy hãy cùng theo dõi tiếp bên dưới nó có gì khác với table thật hay không.

Mục đích sử dụng VIEW

Giúp thao tác nhanh với dữ liệu mà không cần viết lại câu lệnh SQL SELECT từ đầu. Vì nó cũng chứa các dòng và cột như table thật, nên chúng ta có thể thao tác như một table thông thường.

3. Hướng dẫn thao tác với VIEW trong SQL

3.1. Tạo VIEW

Cú pháp


CREATE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;

Lưu ý: Dữ liệu ở VIEW luôn được cập nhật theo dữ liệu mới nhất ở table chính.

Ví dụ

Tạo ra VIEW để liệt kê ra toàn bộ thông tin các bác sĩ và thông tin tài khoản. Với các bác sĩ chưa có tài khoản, hay tài khoản chưa có ai sở hữu thì cũng phải liệt kê ra.


CREATE VIEW view_full_join AS
SELECT d.doctor_id, d.last_name, a.account
FROM doctor d
LEFT JOIN account_system a ON d.doctor_id = a.doctor_id
UNION ALL
SELECT d.doctor_id, d.last_name, a.account
FROM doctor d
RIGHT JOIN account_system a ON d.doctor_id = a.doctor_id;

3.2. Thao tác với VIEW

Tiếp tục ví dụ bên trên, vì VIEW là một table ảo, nên bạn có thể dùng SELECT để truy vấn như một table thật:


SELECT *
FROM view_full_join;

Nhưng bạn hãy nhớ một số lưu ý khi muốn cập nhật dữ liệu (INSERT, UPDATE, DELETE) trên VIEW:

  • VIEW không chứa GROUP BY, ORDER BY.
  • Không chứa DISTINCT.
  • Nên chứa cả các column NOT NULL.
  • Không chứa sub query.
  • VIEW chỉ nên được tạo từ 1 table.

3.3. Để cập nhật cấu trúc VIEW

Khi bạn muốn cập nhật cấu trúc VIEW, hãy sử dụng với cú pháp:


CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;

3.4. Xoá VIEW

Như là các khái niệm được tạo ra bởi CREATE, thì khi xoá chúng ta cũng sẽ sử dụng DROP như bên dưới:


DROP VIEW view_name;

Kết luận

Nếu trong dự án xuất hiện nhiều câu lệnh truy vấn phức tạp, thì hãy sử dụng VIEW để giải quyết vấn đề này. Ngoài ra, VIEW cũng có nhiều loại, các bạn hãy tìm hiểu thêm để linh hoạt trong cách sử dụng nhé.


Devwork

Devwork là Nền tảng TUYỂN DỤNG IT CẤP TỐC với mô hình kết nối Nhà tuyển dụng với mạng lưới hơn 30.000 headhunter tuyển dụng ở khắp mọi nơi.Với hơn 1800 doanh nghiệp IT tin dùng Devwork để :

  • Tối ưu chi phí
  • Tiết kiệm thời gian
  • Tăng tốc tuyển dụng tối đa
  • Đăng ký ngay Devwork trong hôm nay để tuyển dụng những tài năng ưu tú nhất.

    Tag Cloud:

    Tác giả: quyenntt

    Link chia sẻ

    Bình luận

    Việc làm tại Devwork

    khám phá các cơ hội việc làm tốt nhất tại Devwork Xem thêm

    Bài viết liên quan

    Danh sách bài viết liên quan có thể bạn sẽ thích Xem thêm
    intern-la-gi

    Intern là gì? Toàn bộ những điều bạn cần biết về vị trí Intern

    09:39 02/12/2025

    Với sự gia tăng mạnh mẽ của nhu cầu tuyển dụng thực tập sinh tại các doanh nghiệp, khái niệm intern và internship ngày càng trở nên quen thuộc, đặc biệt với sinh viên năm cuối, người mới ra trường. Tuy nhiên, không ít bạn trẻ vẫn còn băn khoăn intern là gì, làm intern là làm gì, hay công việc intern có gì khác với fresher. Trong bài viết này, Devwork.vn sẽ giúp bạn hiểu rõ hơn về vị trí intern, đồng thời chia sẻ những cơ hội thực tập hấp dẫn dành cho người mới bắt đầu....

    Case study là gì? Phương pháp phân tích case study hiệu quả

    04:07 25/11/2025

    Case study không phải cụm từ xa lạ trong marketing, kinh doanh hay học tập. Nhưng làm sao để tiếp cận và giải case study hiệu quả thì không phải ai cũng biết và làm được. Chính vì vậy, trong bài viết hôm nay, cùng Devwork đi tìm hiểu chi tiết về case study là gì, khám phá bí mật đằng sau các case study thành công, từ đó giúp bạn có cái nhìn toàn diện nhất để áp dụng vào công việc hoặc doanh nghiệp của mình.

    case-study-la-gi

    Product Owner (PO) là gì? Giải mã vai trò quan trọng trong IT

    17:00 24/11/2025

    Trong những năm gần đây, đặc biệt là trong môi trường phát triển linh hoạt Agile và Scrum, vai trò của PO ngày càng trở nên quan trọng. PO là thuật ngữ quen thuộc trong lĩnh vực IT và quản lý dự án, nhưng không phải ai cũng hiểu rõ. Vậy PO là gì, PO là viết tắt của từ gì và vai trò thực sự của PO trong doanh nghiệp là gì? Bài viết này Devwork sẽ giải thích chi tiết, giúp bạn nắm bắt kiến thức cốt lõi và ứng dụng hiệu quả.

    product-owner-la-gi

    Singleton Pattern là gì? Hướng dẫn chi tiết cách triển khai trong Java và Python

    04:00 24/11/2025

    Singleton pattern là gì và tại sao nó lại quan trọng trong phát triển phần mềm? Khi bạn cần đảm bảo rằng một class chỉ có duy nhất một thực thể trong suốt vòng đời ứng dụng, Singleton chính là giải pháp hoàn hảo. Bài viết này sẽ giúp bạn hiểu rõ về mẫu thiết kế này, cách triển khai và những tình huống nên (hoặc không nên) áp dụng nó.

    singleton-pattern-la-gi
    brochure-la-gi

    Brochure là gì? Bí quyết tạo brochure ấn tượng cho doanh nghiệp

    04:16 21/11/2025

    Ngày nay, brochure được xem như một công cụ marketing hiệu quả, đóng vai trò truyền tải thông tin và quảng bá hình ảnh sản phẩm, dịch vụ của doanh nghiệp. Không chỉ mang lại sự chuyên nghiệp, brochure còn giúp tạo ấn tượng mạnh mẽ với khách hàng ngay từ lần tiếp xúc đầu tiên. Trong bài viết này, Devwork sẽ cùng bạn tìm hiểu brochure là gì và những yếu tố quan trọng để thiết kế một mẫu brochure thật sự thu hút.

    brief-la-gi

    Brief là gì? Cách viết brief hiệu quả trong công việc

    08:28 20/11/2025

    Khi bắt đầu một dự án, bạn có bao giờ rơi vào tình huống: mọi người hiểu mỗi kiểu, kết quả làm ra thì chẳng ăn khớp? Đó là lúc bạn nhận ra sự quan trọng của brief. Trong thế giới phát triển phần mềm hay marketing, brief chính là "kim chỉ nam", là tài liệu cô đọng giúp chuyển giao thông tin, yêu cầu và kỳ vọng của dự án một cách rõ ràng nhất. Vậy brief là gì, ý nghĩa của nó trong công việc và đặc biệt là trong marketing ra sao? Hãy cùng Devwork tìm hiểu ngay trong bài viết này nhé!