Skip to main content

20 câu hỏi phỏng vấn SQL - Level Intern phần 1 ( từ câu 1 đến 5 )

· 6 min read
Phạm Quyết Thắng
Fullstack developer

1. SQL là gì và tầm quan trọng của nó?

SQL là gì?

SQL là một ngôn ngữ truy vấn cơ sở dữ liệu, được sử dụng để tương tác với hệ quản trị cơ sở dữ liệu.

Ý nghĩa của SQL là gì?

SQL quan trọng vì nó cho phép truy vấn, cập nhật và quản lý dữ liệu trong cơ sở dữ liệu quan hệ.

SQL được sử dụng để làm gì?

SQL được sử dụng để truy vấn dữ liệu, cập nhật dữ liệu, quản lý cơ sở dữ liệu, và thực hiện các thao tác khác liên quan đến dữ liệu.

Tại sao SQL quan trọng trong lập trình?

SQL quan trọng vì nó cung cấp một cách tiêu chuẩn và mạnh mẽ để thao tác dữ liệu trong các hệ thống cơ sở dữ liệu quan hệ, giúp duy trì tính nhất quán và an ninh của dữ liệu.

2. Phân biệt SQL và MySQL

SQL (Structured Query Language) là một ngôn ngữ truy vấn cơ sở dữ liệu tiêu chuẩn được sử dụng để tương tác với các hệ quản trị cơ sở dữ liệu (DBMS). Trong khi đó, MySQL là một hệ quản trị cơ sở dữ liệu quan hệ mã nguồn mở, sử dụng SQL làm ngôn ngữ truy vấn.

Dưới đây là sự khác biệt giữa SQL và MySQL:

SQL:

  • Là một ngôn ngữ truy vấn cơ sở dữ liệu tiêu chuẩn.
  • Không phải là một hệ quản trị cơ sở dữ liệu cụ thể, mà là một ngôn ngữ được sử dụng để tương tác với nhiều hệ quản trị cơ sở dữ liệu khác nhau.

MySQL:

  • Là một hệ quản trị cơ sở dữ liệu quan hệ mã nguồn mở.
  • Sử dụng SQL làm ngôn ngữ truy vấn cho tương tác với cơ sở dữ liệu.
  • Phát triển và duy trì bởi Oracle Corporation.

Tóm lại, SQL là ngôn ngữ truy vấn chung được sử dụng để tương tác với cơ sở dữ liệu, trong khi MySQL là một hệ quản trị cơ sở dữ liệu cụ thể sử dụng SQL làm ngôn ngữ truy vấn.

3. Giải thích cấu trúc cơ bản của truy vấn SQL

Câu truy vấn SQL cơ bản có cấu trúc chung gồm các phần sau:

SELECT:

Chọn cột hoặc cột mà bạn muốn truy vấn dữ liệu từ. Có thể sử dụng dấu '*' để chọn tất cả các cột.

Ví dụ:

SELECT column1, column2 FROM table_name;

FROM:

Xác định bảng từ nơi dữ liệu sẽ được truy vấn.
Ví dụ:

SELECT column1, column2 FROM employees;

WHERE:

Điều kiện để lọc dữ liệu. Chỉ những dòng thỏa mãn điều kiện sẽ được trả về.
Ví dụ:

SELECT column1, column2 FROM employees WHERE department = 'IT';

GROUP BY:

Nhóm các dòng dữ liệu dựa trên giá trị trong một hoặc nhiều cột.
Ví dụ:

SELECT department, COUNT(*) FROM employees GROUP BY department;

HAVING:

Điều kiện được áp dụng sau khi GROUP BY. Chỉ những nhóm thỏa mãn điều kiện sẽ được bao gồm trong kết quả.
Ví dụ:

SELECT department, COUNT(*) FROM employees GROUP BY department HAVING COUNT(*) > 5;

ORDER BY:

Sắp xếp kết quả dựa trên một hoặc nhiều cột.
Ví dụ:

SELECT column1, column2 FROM employees ORDER BY column1 ASC;

Đây chỉ là một cấu trúc cơ bản, và câu truy vấn có thể được mở rộng và tùy chỉnh tùy thuộc vào yêu cầu cụ thể của bạn.

4. Kể tên các loại command ( lệnh ) trong SQL

DQL (Data Query Language):

  • SELECT: Truy vấn dữ liệu từ cơ sở dữ liệu.

DML (Data Manipulation Language):

  • INSERT: Thêm dữ liệu mới vào bảng.
  • UPDATE: Cập nhật dữ liệu trong bảng.
  • DELETE: Xóa dữ liệu từ bảng.

DDL (Data Definition Language):

  • CREATE: Tạo mới cơ sở dữ liệu, bảng, chỉ mục, hoặc các đối tượng khác.
  • ALTER: Sửa đổi cấu trúc của cơ sở dữ liệu, bảng hoặc đối tượng khác.
  • DROP: Xóa cơ sở dữ liệu, bảng, chỉ mục hoặc đối tượng khác.

DCL (Data Control Language):

  • GRANT: Cấp quyền truy cập đến cơ sở dữ liệu hoặc đối tượng khác.
  • REVOKE: Thu hồi quyền truy cập đến cơ sở dữ liệu hoặc đối tượng khác.

TCL (Transaction Control Language):

  • COMMIT: Xác nhận các thay đổi trong một giao dịch.
  • ROLLBACK: Hoàn tác các thay đổi trong một giao dịch.
  • SAVEPOINT: Đặt một điểm lưu để có thể rollback đến sau đó trong một giao dịch.

Mỗi loại lệnh có mục tiêu và ứng dụng khác nhau trong quá trình làm việc với cơ sở dữ liệu. DQL được sử dụng để truy vấn dữ liệu, DML để thay đổi dữ liệu, DDL để quản lý cấu trúc cơ sở dữ liệu, DCL để kiểm soát quyền truy cập, và TCL để kiểm soát giao dịch.

5. Định nghĩa câu lệnh SELECT và cách sử dụng nó.

Định nghĩa:

Lệnh SELECT trong SQL được sử dụng để truy vấn dữ liệu từ một hoặc nhiều bảng trong cơ sở dữ liệu. Đây là lệnh DQL (Data Query Language) cho phép bạn chỉ định các cột bạn muốn lấy và các điều kiện cho việc lấy dữ liệu.

Sử dụng:

Cú pháp cơ bản của lệnh SELECT như sau:

SELECT cột1, cột2, ...
FROM tên_bảng
WHERE điều_kiện;

SELECT: Xác định các cột bạn muốn lấy. FROM: Xác định bảng từ đó bạn muốn lấy dữ liệu. WHERE (tùy chọn): Xác định điều kiện để các dòng được bao gồm trong kết quả. Ví dụ:

-- Lấy tất cả các cột từ bảng "employees"
SELECT * FROM employees;

-- Lấy các cột cụ thể từ bảng "products"
SELECT product_name, price FROM products WHERE category = 'Electronics';

Lệnh SELECT là quan trọng để truy vấn và phân tích dữ liệu trong SQL, và nó có thể được tùy chỉnh để đáp ứng nhiều nhu cầu truy vấn khác nhau.