Câu hỏi phỏng vấn cho lập trình viên SQL: Các câu hỏi thường gặp trong phỏng vấn SQL - Phần 2

Làm thế nào để xóa dữ liệu khỏi bảng bằng câu lệnh DELETE trong SQL

Câu trả lời: Sử dụng câu lệnh DELETE để xóa dữ liệu khỏi bảng.

Ví dụ:

DELETE FROM Customers WHERE CustomerID = 1;

 

Giải thích khái niệm "Index" và lợi ích của việc sử dụng Index trong SQL

Câu trả lời: Index là một cơ chế tăng tốc độ truy xuất dữ liệu trong cơ sở dữ liệu. Nó là một cấu trúc dữ liệu được tạo từ một hoặc nhiều cột trong bảng, giúp giảm thời gian tìm kiếm và sắp xếp dữ liệu. Lợi ích của việc sử dụng Index là cải thiện hiệu suất truy vấn và tăng tốc độ truy xuất dữ liệu.

 

Cách sử dụng câu lệnh CREATE TABLE để tạo bảng mới trong SQL

Câu trả lời: Sử dụng câu lệnh CREATE TABLE để tạo bảng mới trong cơ sở dữ liệu.

Ví dụ:

CREATE TABLE Customers (
    CustomerID INT PRIMARY KEY,
    CustomerName VARCHAR(50),
    ContactName VARCHAR(50),
    Country VARCHAR(50)
);

 

Cách sử dụng câu lệnh ALTER TABLE để thêm cột mới vào bảng trong SQL

Câu trả lời: Sử dụng câu lệnh ALTER TABLE để thêm cột mới vào bảng.

Ví dụ:

ALTER TABLE Customers ADD Email VARCHAR(100);

 

Cách sử dụng câu lệnh DROP TABLE để xóa bảng trong SQL

Câu trả lời: Sử dụng câu lệnh DROP TABLE để xóa bảng khỏi cơ sở dữ liệu.

Ví dụ:

DROP TABLE Customers;

 

Giải thích cách sử dụng các câu lệnh UNION và UNION ALL trong SQL

Câu trả lời:

  • UNION: Dùng để kết hợp kết quả của hai hoặc nhiều truy vấn SELECT thành một tập dữ liệu duy nhất và loại bỏ các bản ghi trùng lặp.
  • UNION ALL: Tương tự như UNION, nhưng cho phép giữ lại các bản ghi trùng lặp.

 

Làm thế nào để sử dụng câu lệnh LIKE và các ký tự đặc biệt trong điều kiện tìm kiếm trong SQL

Câu trả lời: Sử dụng câu lệnh LIKE để thực hiện tìm kiếm mẫu văn bản. Có hai ký tự đặc biệt thường được sử dụng với LIKE:

  • %: Đại diện cho bất kỳ chuỗi ký tự nào, kể cả không có hoặc nhiều ký tự.
  • _: Đại diện cho một ký tự duy nhất.

     

SELECT * FROM Customers WHERE CustomerName LIKE 'A%';

 

Giải thích các câu lệnh truy vấn dữ liệu khác nhau: SELECT, SELECT DISTINCT và SELECT TOP trong SQL

Câu trả lời:

  • SELECT: Truy vấn dữ liệu từ bảng hoặc các bảng kết hợp.
  • SELECT DISTINCT: Truy vấn dữ liệu duy nhất từ một cột, loại bỏ các giá trị trùng lặp.
  • SELECT TOP: Truy vấn một số lượng hàng nhất định từ kết quả truy vấn.
SELECT DISTINCT Country FROM Customers;
SELECT TOP 10 * FROM Orders;

 

Cách sử dụng các câu lệnh GROUP BY, HAVING và ORDER BY cùng nhau trong SQL

Câu trả lời: Kết hợp các câu lệnh GROUP BY, HAVING và ORDER BY cho phép nhóm dữ liệu, lọc các nhóm và sắp xếp kết quả.

Ví dụ:

SELECT Country, COUNT(*) AS TotalCustomers
FROM Customers
GROUP BY Country
HAVING COUNT(*) > 5
ORDER BY TotalCustomers DESC;

 

Giải thích khái niệm "transaction" và cách sử dụng các câu lệnh BEGIN TRANSACTION, COMMIT và ROLLBACK trong SQL

Câu trả lời: Transaction là một chuỗi các thao tác cơ sở dữ liệu được thực hiện như một đơn vị duy nhất, và nếu một thao tác không thành công, thì toàn bộ transaction sẽ bị hủy.

  • BEGIN TRANSACTION: Bắt đầu một transaction.
  • COMMIT: Xác nhận và lưu thay đổi trong transaction vào cơ sở dữ liệu.
  • ROLLBACK: Hủy bỏ transaction và hoàn tác các thay đổi đã thực hiện trong transaction.
BEGIN TRANSACTION;
UPDATE Accounts SET Balance = Balance - 100 WHERE AccountID = 123;
UPDATE Accounts SET Balance = Balance + 100 WHERE AccountID = 456;
COMMIT;