50 câu hỏi và câu trả lời phỏng vấn SQL cho năm 2025

Dưới đây là các câu hỏi và câu trả lời phỏng vấn SQL dành cho những ứng viên mới ra trường cũng như có kinh nghiệm để có được công việc mơ ước của họ.

 

Câu hỏi phỏng vấn SQL dành cho người mới

1. DBMS là gì?

Hệ thống quản lý cơ sở dữ liệu (DBMS) là chương trình kiểm soát việc tạo, bảo trì và sử dụng cơ sở dữ liệu. DBMS có thể được gọi là Trình quản lý tệp quản lý dữ liệu trong cơ sở dữ liệu thay vì lưu nó trong hệ thống tệp.

👉 Tải xuống bản PDF miễn phí: Câu hỏi và trả lời phỏng vấn SQL >>


2. RDBMS là gì?

RDBMS là viết tắt của Hệ thống quản lý cơ sở dữ liệu quan hệ. RDBMS lưu trữ dữ liệu vào tập hợp các bảng, được liên kết bởi các trường chung giữa các cột của bảng. Nó cũng cung cấp các toán tử quan hệ để thao tác dữ liệu được lưu trữ trong các bảng.

Ví dụ: Máy chủ SQL.


3. SQL là gì?

SQL là viết tắt của Ngôn ngữ truy vấn có cấu trúc và nó được sử dụng để giao tiếp với Cơ sở dữ liệu. Đây là ngôn ngữ tiêu chuẩn được sử dụng để thực hiện các tác vụ như truy xuất, cập nhật, chèn và xóa dữ liệu khỏi cơ sở dữ liệu.
Tiêu chuẩn SQL Commands là Chọn.


4. Cơ sở dữ liệu là gì?

Cơ sở dữ liệu không là gì ngoài một dạng dữ liệu có tổ chức để dễ dàng truy cập, lưu trữ, truy xuất và quản lý dữ liệu. Đây còn được gọi là dạng dữ liệu có cấu trúc có thể được truy cập theo nhiều cách.

Ví dụ: Cơ sở dữ liệu quản lý trường học, Cơ sở dữ liệu quản lý ngân hàng.


5. Bảng và Trường là gì?

Bảng là một tập hợp dữ liệu được tổ chức theo mô hình có Cột và Hàng. Cột có thể được phân loại theo chiều dọc và Hàng có thể được phân loại theo chiều ngang. Một bảng có số cột được chỉ định gọi là trường nhưng có thể có bất kỳ số hàng nào được gọi là bản ghi.

Ví dụ:.

Bảng: Nhân viên.

Trường: ID Emp, Tên Emp, Ngày sinh.

Dữ liệu: 201456, David, 11/15/1960.


6. Khóa chính là gì?

A khóa chính là sự kết hợp của các trường chỉ định duy nhất một hàng. Đây là một loại khóa duy nhất đặc biệt và nó có ràng buộc NOT NULL. Điều đó có nghĩa là giá trị khóa chính không thể là NULL.


7. Khóa duy nhất là gì?

Ràng buộc khóa duy nhất xác định duy nhất mỗi bản ghi trong cơ sở dữ liệu. Điều này cung cấp tính duy nhất cho cột hoặc tập hợp các cột.

Ràng buộc khóa chính có ràng buộc duy nhất tự động được xác định trên đó. Nhưng không phải vậy, trong trường hợp Khóa duy nhất.

Có thể có nhiều ràng buộc duy nhất được xác định trên mỗi bảng, nhưng chỉ có một ràng buộc khóa chính được xác định trên mỗi bảng.


8. Khóa ngoại là gì?

Khóa ngoại là một bảng có thể liên quan đến khóa chính của bảng khác. Mối quan hệ cần được tạo giữa hai bảng bằng cách tham chiếu khóa ngoại với khóa chính của bảng khác.


9. Tham gia là gì?

Đây là từ khóa dùng để truy vấn dữ liệu từ nhiều bảng hơn dựa trên mối quan hệ giữa các trường của bảng. Các phím đóng vai trò chính khi sử dụng THAM GIA.


10. Có những kiểu nối nào và giải thích từng kiểu?

nhiều loại tham gia có thể được sử dụng để truy xuất dữ liệu và nó phụ thuộc vào mối quan hệ giữa các bảng.

  • Tham gia bên trong.

Kết nối bên trong trả về các hàng khi có ít nhất một hàng trùng khớp giữa các bảng.

  • Đúng Tham gia.

Nối phải trả về các hàng chung giữa các bảng và tất cả các hàng của bảng bên phải. Nói một cách đơn giản, nó trả về tất cả các hàng từ bảng bên phải mặc dù không có kết quả nào phù hợp ở bảng bên trái.

  • Chỗ nối bên trái.

Nối trái trả về các hàng chung giữa các bảng và tất cả các hàng của bảng bên trái. Nói một cách đơn giản, nó trả về tất cả các hàng từ bảng bên trái mặc dù không có kết quả nào phù hợp trong bảng bên phải.

  • Tham gia đầy đủ.

Kết hợp đầy đủ các hàng trả về khi có các hàng khớp trong bất kỳ bảng nào. Điều này có nghĩa là nó trả về tất cả các hàng từ bảng bên trái và tất cả các hàng từ bảng bên phải.


Câu hỏi phỏng vấn SQL cho 3 năm kinh nghiệm

11. Chuẩn hóa là gì?

Chuẩn hóa là quá trình giảm thiểu sự dư thừa và phụ thuộc bằng cách tổ chức các trường và bảng của cơ sở dữ liệu. Mục đích chính của Chuẩn hóa là thêm, xóa hoặc sửa đổi trường có thể được tạo trong một bảng.


12. Không chuẩn hóa là gì?

DeNormalization là một kỹ thuật được sử dụng để truy cập dữ liệu từ các dạng cơ sở dữ liệu thông thường cao hơn đến thấp hơn. Nó cũng là quá trình đưa dữ liệu dư thừa vào một bảng bằng cách kết hợp dữ liệu từ các bảng liên quan.


13. Tất cả các cách chuẩn hóa khác nhau là gì?

Chuẩn hóa cơ sở dữ liệu có thể dễ dàng hiểu được với sự giúp đỡ của một nghiên cứu điển hình. Các dạng thông thường có thể được chia thành 6 dạng và chúng được giải thích bên dưới -.

Biểu mẫu thông thường của cơ sở dữ liệu
Biểu mẫu thông thường của cơ sở dữ liệu

  • Dạng thông thường thứ nhất (1NF):.

Điều này sẽ loại bỏ tất cả các cột trùng lặp khỏi bảng. Tạo các bảng cho dữ liệu liên quan và xác định các cột duy nhất.

  • Dạng thông thường thứ hai (2NF):.

Đáp ứng mọi yêu cầu của dạng chuẩn đầu tiên. Đặt các tập hợp con dữ liệu vào các bảng riêng biệt và Tạo mối quan hệ giữa các bảng bằng khóa chính.

  • Dạng thông thường thứ ba (3NF):.

Điều này phải đáp ứng tất cả các yêu cầu của 2NF. Loại bỏ các cột không phụ thuộc vào ràng buộc khóa chính.

  • Dạng thông thường thứ tư (4NF):.

Nếu không có phiên bản bảng cơ sở dữ liệu nào chứa hai hoặc nhiều dữ liệu độc lập và đa giá trị mô tả thực thể liên quan thì đó là 4th Hình thức bình thường.

  • Dạng thông thường thứ năm (5NF):.

Một bảng chỉ ở dạng thông thường thứ 5 nếu nó ở dạng 4NF và nó không thể được phân tách thành bất kỳ số lượng bảng nhỏ hơn nào mà không mất dữ liệu.

  • Dạng thông thường thứ sáu (6NF):.

Tuy nhiên, Biểu mẫu thông thường thứ 6 chưa được chuẩn hóa, tuy nhiên, nó đang được các chuyên gia cơ sở dữ liệu thảo luận một thời gian. Hy vọng rằng chúng ta sẽ có một định nghĩa rõ ràng và chuẩn hóa cho Dạng Thường thứ 6 trong thời gian sắp tới…


14. Chế độ xem là gì?

Chế độ xem là một bảng ảo bao gồm một tập hợp con dữ liệu có trong bảng. Lượt xem hầu như không hiển thị và cần ít không gian hơn để lưu trữ. Chế độ xem có thể có dữ liệu của một hoặc nhiều bảng được kết hợp và tùy thuộc vào mối quan hệ.


15. Chỉ số là gì?

Chỉ mục là phương pháp điều chỉnh hiệu suất cho phép truy xuất nhanh hơn các bản ghi từ bảng. Chỉ mục tạo một mục nhập cho mỗi giá trị và sẽ truy xuất dữ liệu nhanh hơn.


16. Các loại chỉ mục khác nhau là gì?

Có ba loại chỉ mục -.

  • Chỉ mục duy nhất.

Việc lập chỉ mục này không cho phép trường có các giá trị trùng lặp nếu cột được lập chỉ mục duy nhất. Chỉ mục duy nhất có thể được áp dụng tự động khi khóa chính được xác định.

  • Clusterchỉ số ed.

Loại chỉ mục này sắp xếp lại thứ tự vật lý của bảng và tìm kiếm dựa trên các giá trị chính. Mỗi bảng chỉ có thể có một chỉ mục được nhóm.

  • KhôngClusterchỉ số ed.

KhôngClustered Index không thay đổi thứ tự vật lý của bảng và duy trì thứ tự logic của dữ liệu. Mỗi bảng có thể có 999 chỉ mục không nhóm.


17. Con trỏ là gì?

Con trỏ cơ sở dữ liệu là một điều khiển cho phép duyệt qua các hàng hoặc bản ghi trong bảng. Điều này có thể được xem như một con trỏ tới một hàng trong một tập hợp các hàng. Con trỏ rất hữu ích cho việc di chuyển ngang như truy xuất, thêm và xóa các bản ghi cơ sở dữ liệu.


18. Mối quan hệ là gì và chúng là gì?

Mối quan hệ cơ sở dữ liệu được định nghĩa là kết nối giữa các bảng trong cơ sở dữ liệu. Có nhiều mối quan hệ dựa trên dữ liệu khác nhau và chúng như sau:

  • Mối quan hệ một đối một.
  • Mối quan hệ Một-Nhiều.
  • Mối quan hệ nhiều-một.
  • Mối quan hệ tự tham khảo.

19. Truy vấn là gì?

Truy vấn DB là một mã được viết để lấy thông tin từ cơ sở dữ liệu. Truy vấn có thể được thiết kế theo cách phù hợp với mong đợi của chúng ta về tập kết quả. Đơn giản chỉ là một câu hỏi tới Cơ sở dữ liệu.


20. Truy vấn phụ là gì?

Truy vấn con là một truy vấn bên trong một truy vấn khác. Truy vấn bên ngoài được gọi là truy vấn chính và truy vấn bên trong được gọi là truy vấn phụ. Truy vấn phụ luôn được thực thi trước và kết quả của truy vấn phụ được chuyển sang truy vấn chính.

Hãy xem xét cú pháp truy vấn phụ –

MySQL Hướng dẫn SubQuery với các ví dụ

Lời phàn nàn thường gặp của khách hàng tại Thư viện Video MyFlix là số lượng tựa phim thấp. Ban quản lý muốn mua phim thuộc danh mục có ít tựa đề nhất.

Bạn có thể sử dụng một truy vấn như
SELECT category_name FROM categories WHERE category_id =( SELECT MIN(category_id) from movies);


Câu hỏi phỏng vấn SQL cho 5 năm kinh nghiệm

21. Có những loại truy vấn phụ nào?

Có hai loại truy vấn con - Tương quan và Không tương quan.

Truy vấn con tương quan không thể được coi là truy vấn độc lập, nhưng nó có thể tham chiếu cột trong bảng được liệt kê trong danh sách TỪ truy vấn chính.

Truy vấn phụ không tương quan có thể được coi là truy vấn độc lập và đầu ra của truy vấn phụ được thay thế trong truy vấn chính.


22. Thủ tục lưu trữ là gì?

Thủ tục lưu trữ là một hàm bao gồm nhiều câu lệnh SQL để truy cập hệ thống cơ sở dữ liệu. Một số câu lệnh SQL được hợp nhất thành một thủ tục lưu trữ và thực thi chúng bất cứ khi nào và bất cứ nơi nào được yêu cầu.


23. Kích hoạt là gì?

Trình kích hoạt DB là một mã hoặc các chương trình tự động thực thi để phản hồi một số sự kiện trên bảng hoặc dạng xem trong cơ sở dữ liệu. Về cơ bản, trigger giúp duy trì tính toàn vẹn của cơ sở dữ liệu.

Ví dụ: Khi một học sinh mới được thêm vào cơ sở dữ liệu học sinh, các bản ghi mới sẽ được tạo trong các bảng liên quan như bảng Bài kiểm tra, Điểm số và Điểm danh.


24. Sự khác biệt giữa lệnh DELETE và TRUNCATE là gì?

Lệnh DELETE được sử dụng để xóa các hàng khỏi bảng và mệnh đề WHERE có thể được sử dụng cho tập hợp tham số có điều kiện. Cam kết và khôi phục có thể được thực hiện sau khi xóa câu lệnh.

TRUNCATE xóa tất cả các hàng khỏi bảng. Thao tác cắt ngắn không thể được khôi phục.


25. Biến cục bộ và biến toàn cục là gì và sự khác biệt của chúng là gì?

Biến cục bộ là các biến có thể được sử dụng hoặc tồn tại bên trong hàm. Các hàm khác không biết đến chúng và các biến đó không thể được tham chiếu hoặc sử dụng. Các biến có thể được tạo bất cứ khi nào hàm đó được gọi.

Biến toàn cục là các biến có thể được sử dụng hoặc tồn tại trong suốt chương trình. Biến tương tự được khai báo ở dạng toàn cục không thể được sử dụng trong hàm. Biến toàn cục không thể được tạo bất cứ khi nào hàm đó được gọi.


26. Ràng buộc là gì?

Ràng buộc có thể được sử dụng để chỉ định giới hạn về kiểu dữ liệu của bảng. Ràng buộc có thể được chỉ định trong khi tạo hoặc thay đổi câu lệnh bảng. Mẫu của ràng buộc là.

  • CÓ GIÁ TRỊ.
  • KIỂM TRA.
  • VỠ NỢ.
  • ĐỘC NHẤT.
  • KHÓA CHÍNH.
  • KHÓA NGOÀI.

27. Dữ liệu là gì Integrity?

Ngày Integrity định nghĩa độ chính xác và tính nhất quán của dữ liệu được lưu trữ trong cơ sở dữ liệu. Nó cũng có thể định nghĩa các ràng buộc toàn vẹn để thực thi các quy tắc kinh doanh trên dữ liệu khi dữ liệu được nhập vào ứng dụng hoặc cơ sở dữ liệu.


28. Tăng tự động là gì?

Từ khóa tăng tự động cho phép người dùng tạo một số duy nhất được tạo khi một bản ghi mới được chèn vào bảng. Từ khóa AUTO INCREMENT có thể được sử dụng trong Oracle và từ khóa IDENTITY có thể được sử dụng trong SQL SERVER.

Hầu hết từ khóa này có thể được sử dụng bất cứ khi nào sử dụng PRIMARY KEY.


29. Đâu là sự khác biệt giữa Cluster và Non-Cluster Mục lục?

Clustered index được sử dụng để dễ dàng truy xuất dữ liệu từ cơ sở dữ liệu bằng cách thay đổi cách lưu trữ bản ghi. Cơ sở dữ liệu sắp xếp các hàng theo cột được đặt thành chỉ mục cụm.

Chỉ mục không nhóm không làm thay đổi cách lưu trữ mà tạo ra một đối tượng hoàn toàn riêng biệt trong bảng. Nó trỏ trở lại các hàng bảng gốc sau khi tìm kiếm.


30. Datawarehouse là gì?

Datawarehouse là kho lưu trữ dữ liệu trung tâm từ nhiều nguồn thông tin. Những dữ liệu đó được hợp nhất, chuyển đổi và cung cấp cho việc khai thác và xử lý trực tuyến. Dữ liệu kho có một tập hợp con dữ liệu được gọi là Data Marts.


31. Tự tham gia là gì?

Tự tham gia được đặt thành truy vấn được sử dụng để so sánh với chính nó. Điều này được sử dụng để so sánh các giá trị trong một cột với các giá trị khác trong cùng một cột trong cùng một bảng. ALIAS ES có thể được sử dụng để so sánh cùng một bảng.


32. Tham gia chéo là gì?

Nối chéo được định nghĩa là tích Descartes trong đó số hàng trong bảng đầu tiên nhân với số hàng trong bảng thứ hai. Nếu giả sử mệnh đề WHERE được sử dụng trong phép nối chéo thì truy vấn sẽ hoạt động giống như INNER JOIN.


33. Hàm do người dùng định nghĩa là gì?

Các hàm do người dùng xác định là các hàm được viết để sử dụng logic đó bất cứ khi nào được yêu cầu. Không cần thiết phải viết cùng một logic nhiều lần. Thay vào đó, hàm có thể được gọi hoặc thực thi bất cứ khi nào cần thiết.


34. Tất cả các loại hàm do người dùng định nghĩa là gì?

Có ba loại hàm do người dùng định nghĩa.

  • Hàm vô hướng.
  • Các hàm có giá trị trong Bảng nội tuyến.
  • Hàm có giá trị nhiều câu lệnh.

Đơn vị trả về vô hướng, biến thể xác định mệnh đề trả về. Hai loại khác trả về bảng dưới dạng trả về.


35. Đối chiếu là gì?

Đối chiếu được định nghĩa là tập hợp các quy tắc xác định cách sắp xếp và so sánh dữ liệu ký tự. Điều này có thể được sử dụng để so sánh A và các ký tự ngôn ngữ khác và cũng phụ thuộc vào độ rộng của ký tự.

Giá trị ASCII có thể được sử dụng để so sánh các dữ liệu ký tự này.


36. Tất cả các loại độ nhạy đối chiếu khác nhau là gì?

Sau đây là các loại độ nhạy đối chiếu khác nhau -.

  • Phân biệt chữ hoa chữ thường - A và a và B và b.
  • Độ nhạy giọng nói.
  • Kana Sensitivity – Nhân vật Kana của Nhật Bản.
  • Độ nhạy chiều rộng – Ký tự byte đơn và ký tự byte đôi.

37. Ưu điểm và nhược điểm của thủ tục lưu trữ?

Thủ tục lưu trữ có thể được sử dụng như một chương trình mô-đun - có nghĩa là tạo một lần, lưu trữ và gọi nhiều lần bất cứ khi nào cần thiết. Điều này hỗ trợ thực thi nhanh hơn thay vì thực hiện nhiều truy vấn. Điều này làm giảm lưu lượng mạng và cung cấp bảo mật tốt hơn cho dữ liệu.

Nhược điểm là nó chỉ có thể được thực thi trong Cơ sở dữ liệu và sử dụng nhiều bộ nhớ hơn trong máy chủ cơ sở dữ liệu.


38. Xử lý giao dịch trực tuyến (OLTP) là gì?

Xử lý giao dịch trực tuyến (OLTP) quản lý các ứng dụng dựa trên giao dịch có thể được sử dụng để nhập dữ liệu, truy xuất dữ liệu và xử lý dữ liệu. OLTP giúp việc quản lý dữ liệu trở nên đơn giản và hiệu quả. Không giống như mục tiêu của hệ thống OLAP, mục tiêu của hệ thống OLTP là phục vụ các giao dịch theo thời gian thực.

Ví dụ - Giao dịch ngân hàng hàng ngày.


39. ĐIỀU KHOẢN là gì?

Mệnh đề SQL được xác định để giới hạn tập kết quả bằng cách cung cấp điều kiện cho truy vấn. Điều này thường lọc một số hàng từ toàn bộ tập hợp các bản ghi.

Ví dụ – Truy vấn có điều kiện WHERE

Truy vấn có điều kiện HAVING.


40. Thủ tục lưu trữ đệ quy là gì?

Một thủ tục lưu trữ tự gọi nó cho đến khi đạt đến một điều kiện biên nào đó. Hàm hoặc thủ tục đệ quy này giúp các lập trình viên sử dụng cùng một bộ mã nhiều lần.


Câu hỏi phỏng vấn SQL dành cho hơn 10 năm kinh nghiệm

41. Lệnh Union, trừ và Interact là gì?

Toán tử UNION được sử dụng để kết hợp các kết quả của hai bảng và loại bỏ các hàng trùng lặp khỏi các bảng.

Toán tử MINUS được sử dụng để trả về các hàng từ truy vấn đầu tiên chứ không phải từ truy vấn thứ hai. Các bản ghi khớp của truy vấn thứ nhất và thứ hai cũng như các hàng khác từ truy vấn đầu tiên sẽ được hiển thị dưới dạng tập hợp kết quả.

Toán tử INTERSECT được sử dụng để trả về các hàng được cả hai truy vấn trả về.


42. Lệnh ALIAS là gì?

Tên ALIAS có thể được đặt cho một bảng hoặc cột. Tên bí danh này có thể được gọi trong Mệnh đề WHERE để xác định bảng hoặc cột.

Ví dụ-.

Select st.StudentID, Ex.Result from student st, Exam as Ex where st.studentID = Ex. StudentID

Ở đây, st là bí danh của bảng sinh viên và Ex là bí danh của bảng thi.


43. Sự khác biệt giữa câu lệnh TRUNCATE và DROP là gì?

TRUNCATE xóa tất cả các hàng khỏi bảng và không thể khôi phục nó. Lệnh DROP xóa một bảng khỏi cơ sở dữ liệu và không thể khôi phục thao tác.


44. Hàm tổng hợp và hàm vô hướng là gì?

Các hàm tổng hợp được sử dụng để đánh giá phép tính toán học và trả về các giá trị đơn lẻ. Điều này có thể được tính toán từ các cột trong bảng. Hàm vô hướng trả về một giá trị duy nhất dựa trên giá trị đầu vào.

Ví dụ -.

Tổng hợp – max(), count – Được tính theo số.

Vô hướng – UCASE(), NOW() – Được tính theo chuỗi.


45. Làm thế nào bạn có thể tạo một bảng trống từ một bảng hiện có?

Ví dụ sẽ là -.

Select * into studentcopy from student where 1=2

Ở đây, chúng ta đang sao chép bảng sinh viên sang một bảng khác có cùng cấu trúc và không có hàng nào được sao chép.


46. ​​Làm cách nào để lấy các bản ghi chung từ hai bảng?

Tập kết quả của các bản ghi chung có thể đạt được bằng -.

Select studentID from student INTERSECT Select StudentID from Exam

47. Làm cách nào để lấy các bản ghi thay thế từ một bảng?

Bản ghi có thể được tìm nạp cho cả số hàng Lẻ và Hàng Chẵn -.

Để hiển thị số chẵn-.

Select studentId from (Select rowno, studentId from student) where mod(rowno,2)=0

Để hiển thị số lẻ-.

Select studentId from (Select rowno, studentId from student) where mod(rowno,2)=1

từ (Chọn rowno, sinh viênId từ sinh viên) trong đó mod(rowno,2)=1.[/sql]


48. Làm thế nào để chọn các bản ghi duy nhất từ ​​một bảng?

Chọn các bản ghi duy nhất từ ​​một bảng bằng cách sử dụng từ khóa DISTINCT.

Select DISTINCT StudentID, StudentName from Student.

49. Lệnh dùng để lấy 5 ký tự đầu tiên của chuỗi là gì?

Có nhiều cách để lấy 5 ký tự đầu tiên của chuỗi -.

Select SUBSTRING(StudentName,1,5) as studentname from student
Select LEFT(Studentname,5) as studentname from student

50. Toán tử nào được sử dụng trong truy vấn so khớp mẫu?

Toán tử THÍCH được sử dụng để khớp mẫu và nó có thể được sử dụng như -.

  1. % – Khớp 0 hoặc nhiều ký tự.
  2. _(Gạch dưới) – Khớp chính xác một ký tự.

Ví dụ -.

Select * from Student where studentname like 'a%'
Select * from Student where studentname like 'ami_'

Những câu hỏi phỏng vấn này cũng sẽ giúp ích cho bài thi viva(orals) của bạn