#

SQL là gì? Các câu lệnh truy vấn SQL phổ biến

 08/09/2022 - 16:00 Trịnh Duy Thanh

Có thể khẳng định dữ liệu chính là một phần rất quan trọng của ứng dụng. Biết cách quản lý và khai thác dữ liệu sẽ mang lại hiệu quả cao trong các dự án. Để làm được điều này bạn cần sự hỗ trợ của Structured Query Language (SQL). Hãy cùng BKHOST tìm hiểu chi tiết về SQL trong bài viết dưới đây.

SQL là gì?

SQL la gi

SQL là viết tắt của Structured Query Language (ngôn ngữ truy vấn có cấu trúc), là ngôn ngữ để quản lý và thực hiện các thao tác khác nhau trên database. SQL xuất hiện đầu tiên vào năm 1970, nó được quản trị viên, nhà phát triển kịch bản tích hợp dữ liệu và nhà phân tích dữ liệu sử dụng. SQL được sử dụng để:

Đăng ký tên miền tại BKHOST

BKHOST đang có chương trình khuyến mại cực shock dành cho khách hàng đăng ký mới tên miền.

  • Giảm giá lên đến 70%.
  • Bắt đầu chỉ từ 59k/năm đầu.

Rất nhiều tên miền đẹp đang chờ bạn. Nhanh tay sở hữu ngay hôm nay trước khi đối thủ của bạn nhắm tới.

Mua domain

  • Sửa đổi cấu trúc bảng và chỉ mục.
  • Thêm, cập nhật, xóa rows data.
  • Giúp người dùng thực thi các truy vấn với cơ sở dữ liệu.
  • Truy xuất tập hợp con thông tin trong hệ thống RDBMS.
  • Cho phép người dùng thêm, sửa đổi, truy xuất dữ liệu từ bảng cơ sở dữ liệu (database tables).

Bảng(table) là đơn vị cơ bản nhất của database (cơ sở dữ liệu) và nó bao gồm các rows (hàng) và các columns (cột). Một bảng duy nhất chứa các records (bản ghi) và mỗi record được lưu trữ trong một row của bảng. Ngoài bảng còn có các loại đối tượng database khác như Views (chế độ xem), Indexes (chỉ mục), Reports (báo cáo).

Gọi là cơ sở dữ liệu quan hệ (Relational databases) vì nó bao gồm các bảng dữ liệu có mối liên quan mật thiết với nhau. Vào cuối những năm 1970 và đầu những năm 1980 SQL chính thức trở thành ngôn ngữ lập trình tiêu chuẩn của cơ sở dữ liệu quan hệ. Sự có mặt của SQL đã giúp việc quản lý và truy vấn dữ liệu hiệu quả, nhanh chóng.

Tiêu chuẩn SQL

Tiêu chuẩn SQL chính thức đã được thông qua vào năm 1986 bởi Viện Tiêu chuẩn Quốc gia Hoa Kỳ (ANSI). Năm 1987 tiêu chuẩn này lại một lần nữa được Tổ chức Tiêu chuẩn hóa Quốc tế (ISO) chứng nhận. Các phiên bản mới của tiêu chuẩn SQL lần lượt được xuất bản, gần đây nhất là vào năm 2016.

ISO và Ủy ban Kỹ thuật Điện Quốc tế đã phát triển tiêu chuẩn ISO SQL là ISO/IEC 9075. Hình thức mặc định cho các phiên bản tiêu chuẩn ISO là ISO/IES (tổ chức tiêu chuẩn), kế tiếp là số tiêu chuẩn ISO, dấu hai chấm và năm xuất bản. Hiện tại tiêu chuẩn ISO cho SQL là ISO/IEC 9075:2016. SQL là ngôn ngữ tiêu chuẩn mà bất cứ RDBMS nào cũng phải đáp ứng ví dụ như Microsoft SQL Server, IBM Db2, Oracle, SAP HANA, Oracle MySQL, mã nguồn mở PostgreSQL…

Một số phiên của SQL sẽ có các phần mở rộng độc quyền để thực hiện các chức năng khác nhau. Chẳng hạn như phần mở rộng của Microsoft có tên là Transact-SQL trong khi đó của Oracle lại là PL/SQL. Các nhà cung cấp bổ sung tiện ích mở rộng độc quyền để tạo sự khác biệt, độc đáo. Vì lẽ đó mà các biến thể của SQL mở rộng thuộc các nhà cung cấp khác nhau sẽ không hoàn toàn tương thích với nhau.

Các lệnh và cú pháp SQL

SQL được thiết kế để truy cập, sửa đổi và trích xuất dữ liệu từ cơ sở dữ liệu quan hệ. Là một ngôn ngữ lập trình, SQL sẽ bao gồm các lệnh:

  • DDL (Data Definition Language) được dùng để xác định các data tables nên còn được gọi là các lệnh định nghĩa dữ liệu.
  • DML (Data Manipulation Language) là lệnh được dùng để thực hiện các thao tác trên dữ liệu như thêm, thay đổi, xóa.
  • DQL (Data Query Language) là ngôn ngữ truy vấn dữ liệu chỉ bao gồm một lệnh “SELECT” để lấy dữ liệu từ tables.
  • DCL (Data Control Language) là các lệnh ngôn ngữ kiểm soát dùng để cấp hoặc thu hồi quyền truy cập của người dùng.
  • TCL (Transaction Control Language) là các lệnh trong ngôn ngữ điều khiển giao dịch được sử dụng với mục đích thay đổi trạng thái của một số dữ liệu.

Quy tắc viết và định dạng các câu lệnh SQL cũng tương tự như những ngôn ngữ lập trình khác. Câu lệnh SQL sẽ bắt đầu bằng một lệnh SQL và kết thúc bằng dấu chấm phẩy (;). Ví dụ:

SELECT * FROM customers;

Các câu lệnh của SQL có thể viết bằng chữ hoa, chữ thường hoặc kết hợp cả hai kiểu chữ. Tuy nhiên cách viết phổ biến, thông dụng là viết từ khóa SQL bằng chữ hoa còn tên table/column bằng chữ thường. Để phân biệt chữ hoa, chữ thường các từ trong câu lệnh sẽ được thêm dấu ngoặc kép. Dưới đây là hai câu lệnh tạo ra kết quả giống nhau:
SELECT * FROM customers;
select * from CUSTOMERS;

Còn đây là hai câu lệnh cho ra hai kết quả khác nhau:
SELECT * FROM customers;
SELECT * FROM "Customers";

Kết thúc của các câu lệnh SQL bằng dấu chấm phẩy, vì thế với những câu lệnh phức tạp chúng sẽ được hiển thị ở trên nhiều dòng, ví dụ như:
SELECT name, telephone, age
FROM customers;

Một câu lệnh có thể kết hợp lựa chọn table và row và sau đó hoạt động trên dữ liệu có ở columns. Ví dụ như ở lệnh sau chọn tên, số điện thoại, ngày sinh cho tất cả khách hàng có độ tuổi trên 21.
SELECT name, telephone, age
FROM customers
WHERE age > 21;

Lệnh SQL phổ biến và những ví dụ về câu lệnh

Để sửa đổi hoặc giảm phạm vi dữ liệu được vận hành hầu hết các lệnh SQL đều được sử dụng với các toán tử. Dưới đây là một số lệnh SQL phổ biến và ví dụ về câu lệnh SQL sử dụng các lệnh đó:

1. SQL SELECT: Lệnh SELECT được dùng để lấy một hoặc tất cả dữ liệu có trong table. SELECT được dùng với các toán tử nhằm mục đích thu hẹp lượng dữ liệu đã chọn.

SELECT title, author, pub_date
FROM catalogue
WHERE pub_date = 2021;

2. SQL CREATE: Lệnh CREATE được dùng để tạo SQL database hoặc SQL table. Phần lớn các phiên bản SQL tạo database mới bằng cách tạo một thư mục mới trong đó tables và những đối tượng database khác được lưu dưới dạng file.

2.1. Câu lệnh CREATE DATABASE sau có chức năng tạo SQL database mới có tên là Human_Resources:

CREATE DATABASE Human_Resources;

2.2. Câu lệnh CREATE TABLE được dùng để tạo SQL table:
CREATE TABLE Employees (
employee_ID int,
last_name varchar(255),
first_name varchar(255)
);

3. SQL DELETE: Để xóa rows ra khỏi table đã đặt tên người ta dùng lệnh DELETE. Trong ví dụ sau tất cả các records (bản ghi) của nhân viên mang họ Smithee đều bị delete:
DELETE FROM Employees WHERE last_name='Smithee';

4. SQL INSERT INTO: Lệnh INSERT INTO được sử dụng để thêm các records vào database, ví dụ:
INSERT INTO Employees (
last_name,
first_name
)
VALUES (
'Alan',
'Smithee'
);

5. SQL UPDATE: Để thay đổi đối với row hoặc record trong một table cụ thể cần sử dụng lệnh UPDATE. Chẳng hạn như câu lệnh sau update tất cả các records bao gồm giá trị last_name của Smithee bằng cách đổi tên thành Smith:
UPDATE Employees
SET last_name = 'Smith',
WHERE last_name = 'Smithee';

Các công cụ SQL-on-Hadoop

SQL –on-Hadoop là một nhánh mới của SQL. Công cụ truy vấn này cho phép các tổ chức có dữ liệu lưu trữ ở Hadoop lớn sử dụng SQL để làm ngôn ngữ truy vấn đồng thời cho phép các chuyên gia sử dụng ngôn ngữ truy vấn quen thuộc thay cho ngôn ngữ phức tạp hoặc xa lạ. Rất nhiều công cụ SQL –on-Hadoop có sẵn từ các nhà phân phối Hadoop và ở những nhà cung cấp khác. Chúng phần lớn mà phần mềm mã nguồn mở hoặc phiên bản thương mại.

Bảo mật SQL

Server SQL cũng chứa đựng những lỗ hổng bảo mật như bất cứ ứng dụng khác của doanh nghiệp như xác thực yếu, thiết kế không an toàn, cấu hình sai và một số vấn đề khác. Năm 1998 SQL injection lần đầu tiên được báo cáo và cho đến nay nó vẫn là một kỹ thuật được kẻ xấu lợi dụng để thi hành các câu lệnh SQL bất hợp pháp.

Lịch sử của SQL

SQL có mặt vào năm 1970, SQL tiếp tục tạo nên những dấu ấn quan trọng. Mang tới cho người dùng nhiều lợi ích trong quản lý cơ sở dữ liệu quan hệ. Hãy cùng nhìn lại chặng đường hình thành và phát triển của SQL qua các cột mốc sau:

  • Năm 1970: “A Relational Model of Data for Large Shared Data Banks” của EF Codd đặt cơ sở cho các RDBMSes.
  • Năm 1974: IBM xuất bản bài báo giới thiệu ngôn ngữ truy vấn có cấu trúc với tên gọi là SEQUEL.
  • Năm 1977: Công ty Relational Software Inc. (phiên bản của Oracle) bắt đầu xây dựng một RDBMS thương mại.
  • Năm 1979: Oracle xuất xưởng RDBMS thương mại đầu tiên cho các máy tính mini.
  • Năm 1982: IBM ra mắt SQL/Data System (SQL RDBMS) cho các máy tính lớn của IBM.
  • Năm 1986: Tiêu chuẩn SQL được ANSI chấp nhận.
  • Năm 1987: Tiêu chuẩn SQL được thông qua bởi ISO.
  • Năm 1989: Bản sửa đổi đầu tiên tiêu chuẩn ISO SQL, SQL-89 được xuất bản.
  • Năm 1992: Bản sửa đổi đầu tiên của tiêu chuẩn SQL ISQ, SQL-92, được xuất bản.
  • Năm 1999: Phiên bản tiêu chuẩn ISO đầu tiên xuất hiện ISO / IEC SQL: 1999.
  • Năm 2003: Một phiên bản tiêu chuẩn ISO tiếp theo ra đời ISO / IEC SQL: 2003.
  • Năm 2006: Phiên bản ISO / IEC SQL: 2006 mở rộng chức năng liên quan đến XML được ra mắt.
  • Năm 2008: Phiên bản ISO / IEC SQL: 2008 bổ sung thêm tính năng liên kết hai hoặc nhiều bảng.
  • Năm 2011: Phiên bản ISO / IEC SQL: 2011 hỗ trợ thêm một số tính năng cho cơ sở dữ liệu quan hệ.
  • Năm 2016: ISO / IEC SQL: 2016 là phiên bản tiêu chuẩn ISO mới và hiện đại nhất bổ sung các tính năng tùy chọn mới liên quan tới ký hiệu đối tượng JavaScript và một số yếu tố khác.

Kỹ năng SQL và các nghề nghiệp liên quan

Nếu bạn có kỹ năng SQL sẽ thúc đẩy sự phát triển, thăng tiến trong nghề nghiệp nhất là với nghề quản trị viên cơ sở dữ liệu, lập trình viên, kiến trúc kho dữ liệu…Ngoài ra những trải nghiệm SQL còn mang tới lợi ích rất lớn cho các nhà khoa học dữ liệu, nhà phân tích dữ liệu, kỹ sư đám mây.

Tổng kết về SQL

Bài viết trên chúng tôi đã tổng hợp những thông tin liên quan tới SQL. Bất kỳ ngành nghề công nghệ thông tin nào khi được đào tạo bài bản đều sẽ có sự xuất hiện của SQL và các sinh viên sẽ phải nghiên cứu nhiều về ngôn ngữ này.

Nếu bạn có thắc mắc về SQL, hãy để lại ở bên bình luận bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.

P/s: Bạn cũng có thể truy cập vào Blog của BKHOST để đọc thêm các bài viết chia sẻ kiến thức về lập trình, quản trị mạng, website, domain, hosting, vps, server, email,… Chúc bạn thành công.


  • ngôn ngữ sql là gì
  • ngôn ngữ lập trình sql
  • các câu lệnh sql
  • truy vấn cơ sở dữ liệu là gì
  • câu lệnh truy vấn sql
  • sql viết tắt của từ gì

Mua domain và hosting tại BKHOST

BKHOST là một trong những nhà cung cấp dịch vụ domain và hosting uy tín nhất tại Việt Nam.

Rất nhiều chương trình khuyến mãi hấp dẫn đang chờ bạn. Đăng ký ngay hôm nay:

thuê tên miền và hosting

Tôi là Trịnh Duy Thanh, CEO & Founder Công ty Cổ Phần Giải Pháp Mạng Trực Tuyến Việt Nam - BKHOST. Với sứ mệnh mang tới các dịch vụ trên Internet tốt nhất cho các cá nhân và doanh nghiệp trong nước và quốc tế, tôi luôn nỗ lực hết mình nâng cấp đầu tư hệ thống phần cứng, nâng cao chất lượng dịch vụ chăm sóc khách hàng để đem đến những sản phẩm hoàn hảo nhất cho người tiêu dùng. Vì vậy, tôi tin tưởng sẽ đem đến các giải pháp CNTT mới nhất, tối ưu nhất, hiệu quả nhất và chi phí hợp lý nhất cho tất cả các doanh nghiệp.
Bình luận

Thanh toán linh hoạt

Chúng tôi chấp nhận thanh toán như ATM, Visa, Internet Banking, Paypal, Baokim, Ngân lượng

Gọi ĐT tư vấn ngay
Chat ngay qua Zalo
Chat ngay qua Messenger
Góp ý cho chúng tôi