SQL là gì? Toàn tập về ngôn ngữ SQL cho người mới bắt đầu
23/09/2024Để lấy thông tin từ cơ sở dữ liệu, người dùng cần diễn đạt yêu cầu bằng một ngôn ngữ mà hệ thống hiểu được. SQL đảm nhiệm vai trò này, giúp truy vấn và xử lý dữ liệu thông qua các câu lệnh có cấu trúc rõ ràng. Cùng Viettel IDC tìm hiểu SQL là gì, cách hoạt động và cách viết truy vấn cơ bản qua ví dụ thực tế.
SQL là gì?
SQL (Structured Query Language), hay ngôn ngữ truy vấn có cấu trúc, là ngôn ngữ dùng để truy vấn và quản lý dữ liệu trong cơ sở dữ liệu quan hệ. Thông qua các câu lệnh SQL, người dùng tạo bảng, thêm, sửa, xóa bản ghi và lấy thông tin theo điều kiện cụ thể. Dữ liệu được tổ chức thành các bảng gồm hàng và cột, với mối liên hệ giữa các bảng.
SQL ra đời vào những năm 1970, do hai nhà nghiên cứu Donald Chamberlin và Raymond Boyce tại IBM phát triển để thao tác và truy xuất dữ liệu trong dự án cơ sở dữ liệu System R. Ngôn ngữ ban đầu mang tên SEQUEL (Structured English Query Language). Sau đó tên gọi được đổi thành SQL do vấn đề liên quan đến nhãn hiệu.
SQL hoạt động như thế nào?
SQL giúp người dùng mô tả dữ liệu cần lấy hoặc thao tác cần thực hiện thông qua các câu lệnh. Hệ quản trị cơ sở dữ liệu tiếp nhận câu lệnh SQL, xác định cách xử lý và trả về kết quả. Người dùng nêu yêu cầu, còn hệ quản trị quyết định phương án truy cập dữ liệu.
Với một truy vấn lấy dữ liệu, quy trình xử lý được khái quát như sau:
- Tiếp nhận truy vấn: Người dùng hoặc ứng dụng gửi câu lệnh SQL đến hệ quản trị cơ sở dữ liệu.
- Phân tích câu lệnh: Hệ thống kiểm tra cú pháp, xác định các bảng, cột và biểu thức được tham chiếu. Những yêu cầu không hợp lệ sẽ được báo lỗi.
- Lập kế hoạch xử lý: Bộ tối ưu truy vấn đánh giá các phương án, chẳng hạn quét bảng hoặc sử dụng chỉ mục, để chọn kế hoạch có chi phí ước tính phù hợp.
- Thực thi và trả kết quả: Hệ thống chạy kế hoạch đã chọn, thực hiện các thao tác như lọc, nối bảng, tổng hợp hoặc sắp xếp rồi gửi kết quả về ứng dụng.
Ví dụ, doanh nghiệp muốn lấy tên và giá của các sản phẩm có giá trên 1 triệu đồng:
Trong truy vấn này, FROM xác định bảng SanPham, WHERE đặt điều kiện giá trên 1 triệu đồng và SELECT chọn hai cột cần hiển thị. Hệ quản trị xử lý yêu cầu rồi trả về danh sách sản phẩm đáp ứng điều kiện.
Xem thêm:
- Database là gì? Có những loại Database nào?
- Cơ sở dữ liệu đám mây (Database cloud): Lợi ích và cách hoạt động
- Chia sẻ dữ liệu là gì? Vai trò của chia sẻ dữ liệu
Các thành phần cơ bản khi làm việc với SQL
Để đọc hiểu và viết truy vấn SQL, người mới cần nắm cách tổ chức dữ liệu và vai trò của từng thành phần. Dưới đây là những thành phần nền tảng:
Các chức năng chính của SQL
SQL hỗ trợ tổ chức, cập nhật và khai thác dữ liệu trong cơ sở dữ liệu quan hệ. Những chức năng chính gồm:
- Truy vấn dữ liệu: Tìm kiếm, lọc và sắp xếp thông tin theo yêu cầu, chẳng hạn lấy danh sách đơn hàng trong tháng.
- Thêm, sửa và xóa dữ liệu: Ghi nhận bản ghi mới, cập nhật thông tin đã lưu hoặc loại bỏ dữ liệu không còn cần thiết.
- Quản lý cấu trúc cơ sở dữ liệu: Tạo, điều chỉnh và xóa các đối tượng như bảng, chỉ mục hoặc khung nhìn.
- Tổng hợp và phân tích: Đếm số lượng, tính tổng, tính trung bình và nhóm dữ liệu để lập báo cáo.
- Kết hợp dữ liệu từ nhiều bảng: Liên kết thông tin liên quan, chẳng hạn ghép dữ liệu khách hàng với lịch sử mua hàng.
- Kiểm soát quyền truy cập: Cấp hoặc thu hồi quyền đọc, chỉnh sửa dữ liệu cho người dùng và vai trò.
- Quản lý giao dịch: Xác nhận hoặc hoàn tác các thay đổi, giúp những thao tác liên quan được xử lý đồng bộ.
Các nhóm câu lệnh SQL cơ bản
Các câu lệnh SQL được phân nhóm theo chức năng, giúp người dùng lựa chọn đúng lệnh khi xây dựng và khai thác cơ sở dữ liệu. Dưới đây là 4 nhóm cơ bản phục vụ định nghĩa cấu trúc, thao tác dữ liệu, truy vấn và phân quyền.
DDL (Ngôn ngữ định nghĩa dữ liệu)
DDL (Data Definition Language) dùng để tạo và thay đổi cấu trúc các đối tượng trong cơ sở dữ liệu như bảng, chỉ mục và khung nhìn. Ví dụ, doanh nghiệp sử dụng DDL để tạo bảng khách hàng hoặc bổ sung cột số điện thoại vào bảng đã có.
DML (Ngôn ngữ thao tác dữ liệu)
DML (Data Manipulation Language) dùng để thêm, chỉnh sửa và xóa các bản ghi trong bảng. Nhóm lệnh này phục vụ những thao tác hằng ngày như lưu đơn hàng mới, cập nhật thông tin khách hàng hoặc xóa dữ liệu không còn cần thiết.
DQL (Ngôn ngữ truy vấn dữ liệu)
DQL (Data Query Language) dùng để truy xuất thông tin từ cơ sở dữ liệu với câu lệnh chính là SELECT. Khi kết hợp các mệnh đề như WHERE, GROUP BY và ORDER BY, người dùng lọc, tổng hợp và sắp xếp dữ liệu theo nhu cầu.
Các toán tử AND và OR giúp kết hợp điều kiện: AND yêu cầu các điều kiện cùng đúng, còn OR yêu cầu ít nhất một điều kiện đúng. Ví dụ dưới đây lấy những sản phẩm có giá trên 1 triệu đồng và số lượng tồn lớn hơn 0, sau đó sắp xếp giá giảm dần:
DCL (Ngôn ngữ kiểm soát dữ liệu)
DCL (Data Control Language) dùng để cấp và thu hồi quyền truy cập cơ sở dữ liệu. Nhóm lệnh này giúp quản trị viên xác định người dùng nào được xem hoặc chỉnh sửa dữ liệu, chẳng hạn cấp quyền đọc bảng doanh thu cho nhân viên nhưng giới hạn quyền cập nhật.
TCL – Ngôn ngữ kiểm soát giao dịch
TCL (Transaction Control Language) dùng để quản lý các thay đổi trong một giao dịch. Giao dịch tập hợp những thao tác liên quan thành một đơn vị công việc, giúp xác nhận thay đổi khi hoàn tất hoặc hoàn tác khi cần. Ví dụ, giao dịch chuyển tiền cần xử lý đồng bộ thao tác trừ tiền ở tài khoản gửi và cộng tiền ở tài khoản nhận.
Ví dụ truy vấn SQL cho người mới
Giả sử doanh nghiệp có bảng SanPham lưu mã, tên và giá sản phẩm như dưới đây. Từ bảng này, bạn sẽ thực hiện các truy vấn để xem dữ liệu, chọn cột và lọc sản phẩm theo giá.
Để lấy toàn bộ dữ liệu trong bảng, sử dụng câu lệnh:
Dấu * đại diện cho tất cả các cột, còn FROM SanPham xác định bảng cần truy vấn. Câu lệnh trên trả về cả 4 bản ghi với đầy đủ mã, tên và giá sản phẩm.
Nếu chỉ cần xem tên và giá, bạn chỉ định các cột cần lấy:
Kết quả vẫn gồm 4 sản phẩm nhưng chỉ hiển thị hai cột TenSanPham và Gia. Để thu hẹp kết quả, chẳng hạn tìm sản phẩm có giá trên 1 triệu đồng và sắp xếp từ giá cao xuống thấp, hãy bổ sung WHERE và ORDER BY:
WHERE giữ lại các sản phẩm đáp ứng điều kiện giá, còn ORDER BY Gia DESC sắp xếp chúng theo giá giảm dần. Các thành phần này giúp chọn, lọc và sắp xếp dữ liệu trong cùng một truy vấn.
Kết quả trả về như sau:
Các hệ quản trị cơ sở dữ liệu dùng SQL phổ biến
Ngôn ngữ truy vấn SQL được sử dụng trong nhiều hệ quản trị cơ sở dữ liệu, từ ứng dụng nhỏ đến hệ thống doanh nghiệp. Các nền tảng dưới đây đều hỗ trợ SQL nhưng khác nhau về kiến trúc, tính năng và cách triển khai.
MySQL
MySQL là hệ quản trị cơ sở dữ liệu quan hệ mã nguồn mở, được sử dụng rộng rãi cho website và ứng dụng web. Phiên bản MySQL Community cho phép tải và sử dụng miễn phí, với hệ sinh thái công cụ cùng cộng đồng hỗ trợ lớn.
PostgreSQL
PostgreSQL là hệ quản trị cơ sở dữ liệu quan hệ đối tượng mã nguồn mở, nổi bật với khả năng mở rộng và hỗ trợ truy vấn phức tạp. Nền tảng sử dụng SQL, đồng thời cho phép bổ sung kiểu dữ liệu và hàm tùy chỉnh để đáp ứng những yêu cầu xử lý chuyên biệt.
Microsoft SQL Server
SQL Server là hệ quản trị cơ sở dữ liệu của Microsoft, sử dụng Transact-SQL (T-SQL) để truy vấn và thao tác dữ liệu. T-SQL mở rộng SQL với các thành phần lập trình, giúp xây dựng quy trình xử lý dữ liệu phục vụ ứng dụng doanh nghiệp.
Oracle Database
Oracle Database hỗ trợ SQL để quản lý và khai thác dữ liệu, kết hợp với PL/SQL để lập trình các quy trình xử lý ngay trong cơ sở dữ liệu. PL/SQL bổ sung những thành phần như biến, điều kiện và vòng lặp, giúp triển khai logic nghiệp vụ phức tạp.
SQLite
SQLite là bộ máy cơ sở dữ liệu SQL nhỏ gọn, được tích hợp trực tiếp vào ứng dụng và không cần tiến trình máy chủ riêng. Dữ liệu được lưu trong một tệp, phù hợp với ứng dụng di động, phần mềm máy tính và nhu cầu lưu trữ cục bộ.
Câu hỏi thường gặp về SQL
Phân biệt SQL, MySQL và SQL Server
SQL là ngôn ngữ truy vấn, còn MySQL và SQL Server là hai hệ quản trị cơ sở dữ liệu sử dụng ngôn ngữ này. Người dùng viết câu lệnh SQL để đưa ra yêu cầu; hệ quản trị tiếp nhận, xử lý và quản lý dữ liệu.
SQL và NoSQL khác nhau như thế nào?
SQL được hiểu là cơ sở dữ liệu quan hệ sử dụng SQL, còn NoSQL chỉ nhóm cơ sở dữ liệu theo các mô hình như tài liệu, khóa - giá trị, đồ thị hoặc cột rộng. Khác biệt chính nằm ở cách tổ chức dữ liệu và phương thức truy vấn.
Tại sao nên chọn học SQL?
SQL có cú pháp cơ bản dễ tiếp cận, giúp người học chủ động truy vấn, xử lý dữ liệu và lập báo cáo. Kiến thức này áp dụng trên nhiều hệ quản trị, đồng thời bổ trợ cho công việc lập trình, phân tích dữ liệu và quản trị cơ sở dữ liệu.
Kết luận
Hiểu SQL là gì giúp bạn nắm được vai trò của ngôn ngữ truy vấn trong quá trình làm việc với cơ sở dữ liệu. Khi biết kết hợp các câu lệnh và điều kiện phù hợp, bạn sẽ chủ động lấy, cập nhật và tổng hợp thông tin theo nhu cầu. Hãy bắt đầu với SELECT, FROM và WHERE để làm quen trước khi xây dựng những truy vấn phức tạp hơn.
Để tìm hiểu thêm về các sản phẩm, dịch vụ tại Viettel IDC, vui lòng liên hệ đến Viettel IDC:
- Hotline: 1800.8088 (miễn phí cước gọi)
- Fanpage: https://www.facebook.com/viettelidc
- Website: https://viettelidc.com.vn
Tin liên quan
vMaaS cập nhật thêm mô hình AI mới - Một API, nhiều mô hình lựa chọn linh hoạt, chi phí không đổi
Viettel Model as a Service (vMaaS) cập nhật thêm Gemma 3, Qwen3-VL và Llama Nemotron, đồng thời hỗ trợ thêm hơn 40 mô hình AI theo nhu cầu. Tìm hiểu cách chọn mô hình phù hợp qua một API.
Thông báo về việc tổ chức đấu giá tài sản thanh lý tháng 10/2026
Công ty Cổ phần Viettel – CHT thông báo về việc đấu giá đối với danh mục tài sản: Tài sản thanh lý bao gồm: Lô 1 - Bình ắc quy + Lô 2 - Tủ Rack và thiết bị cơ điện.
So sánh IDS và IPS: Sự khác biệt và cách lựa chọn phù hợp
So sánh IDS và IPS giúp doanh nghiệp hiểu rõ cách hai giải pháp phát hiện, ngăn chặn xâm nhập và lựa chọn phương án bảo vệ hệ thống mạng phù hợp.
NVMe Hosting là gì? Ưu điểm, so sánh và cách lựa chọn
NVMe Hosting là gì? Tìm hiểu ưu điểm, so sánh với SSD SATA và HDD, cùng cách lựa chọn hosting phù hợp để tối ưu hiệu năng website.
Sự khác biệt giữa các dịch vụ hosting của Việt Nam với quốc tế
Tìm hiểu sự khác biệt giữa các dịch vụ hosting của Việt Nam với quốc tế về tốc độ, chi phí, công nghệ và hỗ trợ kỹ thuật để chọn giải pháp phù hợp.
So sánh dịch vụ hosting tại Viettel IDC với những nhà cung cấp khác: Nên chọn bên nào?
So sánh dịch vụ hosting tại Viettel IDC với những nhà cung cấp khác về giá, cấu hình, hiệu năng và bảo mật để chọn giải pháp phù hợp cho doanh nghiệp.
Những nền tảng điện toán đám mây nào phù hợp nhất cho doanh nghiệp nhỏ? Cách lựa chọn hiệu quả
Những nền tảng điện toán đám mây nào phù hợp cho doanh nghiệp nhỏ? Tìm hiểu các lựa chọn phổ biến và tiêu chí chọn nền tảng phù hợp.
Cách chọn máy chủ phù hợp cho website nhỏ tại Việt Nam: Từ cấu hình đến chi phí
Cách chọn máy chủ phù hợp cho website nhỏ tại Việt Nam dựa trên cấu hình, nhu cầu sử dụng, chi phí và khả năng mở rộng.
Những yếu tố quan trọng khi lựa chọn dịch vụ Cloud Database để đảm bảo khả năng mở rộng và độ tin cậy
Những yếu tố quan trọng khi lựa chọn dịch vụ Cloud Database giúp doanh nghiệp đảm bảo khả năng mở rộng, hiệu năng và độ tin cậy cho hệ thống.
Lỗi SQL Server Setup failed: Nguyên nhân và cách khắc phục
Lỗi SQL Server Setup failed do đâu? Tìm hiểu nguyên nhân, cách kiểm tra và khắc phục lỗi để cài đặt SQL Server thành công.
Bình luận ()