50 câu hỏi và câu trả lời phỏng vấn SQL hàng đầu (Cập nhật năm 2021)

Mục lục:

Anonim

SQL là viết tắt của Structured Query Language là một ngôn ngữ lập trình dành riêng cho miền để quản lý dữ liệu trong Hệ thống quản lý cơ sở dữ liệu. Kỹ năng lập trình SQL rất được mong muốn và yêu cầu trên thị trường, vì có một lượng lớn Hệ thống quản lý cơ sở dữ liệu (DBMS) trong hầu hết mọi ứng dụng phần mềm. Để có được một công việc, các ứng viên cần phải vượt qua cuộc phỏng vấn, trong đó họ được hỏi nhiều câu hỏi phỏng vấn SQL khác nhau.

Sau đây là danh sách các câu hỏi và câu trả lời phỏng vấn SQL được tuyển chọn, những câu hỏi này có thể sẽ được hỏi trong cuộc phỏng vấn SQL. Các ứng viên có khả năng được hỏi các câu hỏi phỏng vấn SQL cơ bản đến các câu hỏi SQL cấp độ cao hơn tùy thuộc vào kinh nghiệm của họ và nhiều yếu tố khác. Danh sách dưới đây bao gồm tất cả các câu hỏi phỏng vấn SQL cho người mới bắt đầu cũng như các câu hỏi phỏng vấn SQL cho các ứng viên có kinh nghiệm và một số câu hỏi phỏng vấn truy vấn SQL.

Câu hỏi phỏng vấn SQL Tệp PDF: Tải xuống tại đây

Các câu hỏi và câu trả lời phỏng vấn SQL thường được hỏi dành cho những người mới tìm hiểu và có kinh nghiệm

1. DBMS là gì?

Hệ quản trị cơ sở dữ liệu (DBMS) là một chương trình kiểm soát việc tạo, duy 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 hơn là lưu dữ liệu trong hệ thống tệp.

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ụ: SQL Server.

3. SQL là gì?

SQL là viết tắt của Structured Query Language, và nó được sử dụng để giao tiếp với Cơ sở dữ liệu. Đây là một 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.

Lệnh SQL tiêu chuẩn là Chọn.

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

Cơ sở dữ liệu không là gì khác 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 với các Cột và Hàng. Các cột có thể được phân loại là dọc và Hàng ngang. Một bảng có số cột cụ thể được 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.

Thí dụ:.

Bảng: Nhân viên.

Trường: Emp ID, Emp Name, Date of Birth.

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

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

Khóa chính là một tổ hợp 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. Có nghĩa là, các 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 được 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 nó. Nhưng không phải, trong trường hợp của Unique Key.

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. Khoá 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à một từ khóa được sử 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 một vai trò quan trọng khi các JOIN được sử dụng.

10. Hãy cho biết các loại phép nối và giải thích từng loại?

Có nhiều kiểu nối khác nhau 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.

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

  • Tham gia đúng.

Nối phải trả về các hàng phổ biến giữa các bảng và tất cả các hàng của bảng bên phải. Đơ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ó hàng nào phù hợp trong bảng bên trái.

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

Nối trái trả về các hàng phổ biến giữa các bảng và tất cả các hàng của bảng bên trái. Đơ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ả phù hợp nào trong bảng bên phải.

  • Tham gia đầy đủ.

Tham gia đầy đủ các hàng trả về khi có các hàng phù hợ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.

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 thực hiện trong một bảng duy nhất.

12. 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 sự 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 chuẩn hóa khác nhau là gì?

Các dạng thông thường có thể được chia thành 5 dạng, và chúng được giải thích bên dưới -.

  • Dạng chuẩn đầu tiên (1NF):.

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

  • Dạng chuẩn thứ hai (2NF):.

Đáp ứng tất cả các yêu cầu của hình thức thông thường đầu tiên. Đặt các tập dữ liệu con trong 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 chuẩn 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 các ràng buộc khóa chính.

  • Dạng chuẩn thứ tư (4NF):.

Đáp ứng tất cả các yêu cầu của dạng chuẩn thứ ba và nó không được có các phụ thuộc đa giá trị.

14. View là gì?

Một khung nhìn là một bảng ảo bao gồm một tập con dữ liệu được chứa trong một bảng. Các chế độ xem hầu như không hiển thị và cần ít dung lượng 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à nó 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. Một chỉ mục tạo một mục nhập cho mỗi giá trị và việc lấy dữ liệu sẽ nhanh hơn.

16. Tất cả các loại chỉ mục khác nhau là gì?

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

  • Chỉ số 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.

  • Chỉ mục theo cụm.

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ị khóa. Mỗi bảng chỉ có thể có một chỉ mục nhóm.

  • Chỉ số không phân biệt.

NonClustered Index không làm 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 phân biệt.

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ỏ đến 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 duyệt như truy xuất, bổ sung và loại bỏ 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ệ cơ sở dữ liệu khác nhau, và chúng như sau:.

  • Mối quan hệ 1-1.
  • Mối quan hệ từ một đến nhiều.
  • Mối quan hệ nhiều với một.
  • Mối quan hệ tự tham chiếu.

19. Truy vấn là gì?

Truy vấn DB là một đoạn mã được viết để lấy lại 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 kỳ vọng của chúng tôi về tập kết quả. Đơn giản, một câu hỏi đối với Cơ sở dữ liệu.

20. Truy vấn con là gì?

Truy vấn con là một truy vấ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ụ. SubQuery luôn được thực thi đầu tiên và kết quả của truy vấn con được chuyển đến truy vấn chính.

21. Các loại truy vấn con là gì?

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

Một truy vấn con có tương quan không thể được coi là truy vấn độc lập, nhưng nó có thể tham chiếu đến cột trong bảng được liệt kê trong danh sách TỪ của 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 vào 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 đượ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. Trigger 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 với phản hồi đối vớ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 Kiểm tra, Điểm và Chuyên cần.

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

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 tham số có điều kiện. Cam kết và Khôi phục có thể được thực hiện sau khi tuyên bố xóa.

TRUNCATE xóa tất cả các hàng khỏi bảng. Không thể hoàn tác thao tác cắt ngắn.

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?

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. Chúng không được biết đến với các hàm khác 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à những biến có thể được sử dụng hoặc tồn tại trong suốt chương trình. Không thể sử dụng cùng một biến được khai báo trong toàn cục trong các hàm. Không thể tạo biến toàn cục 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.
  • MẶC ĐỊNH.
  • ĐỘC NHẤT.
  • KHÓA CHÍNH.
  • TỪ KHÓA NGOẠI TỆ.

27. Tính toàn vẹn của dữ liệu là gì?

Tính toàn vẹn của dữ liệu xác định tính chính xác và nhất quán của dữ liệu được lưu trữ trong cơ sở dữ liệu. Nó cũng có thể xác định các ràng buộc toàn vẹn để thực thi các quy tắc nghiệp vụ trên dữ liệu khi nó đượ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.

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

29. Sự khác biệt giữa Cluster Index và Non-Cluster Index?

Chỉ mục phân cụm đượ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ữ các 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 nhóm.

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

30. Datawarehouse là gì?

Datawarehouse là một kho 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 quá trình khai thác và xử lý trực tuyến. Dữ liệu kho có một tập dữ liệu con đượ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. Cross-Join là gì?

Phép 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 kết nối chéo thì truy vấn sẽ hoạt động giống như một INNER JOIN.

33. Chức năng do người dùng định nghĩa là gì?

Các hàm do người dùng định nghĩa 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 nhất 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.

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

Ba loại chức năng do người dùng xác định là.

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

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

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 dữ liệu ký tự có thể được sắp xếp và so sánh. Đ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 các 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 Accent.
  • Kana Sensitive - Các ký tự Kana trong tiếng Nhật.
  • Độ nhạy chiều rộng - Ký tự byte đơn và ký tự byte kép.

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 lập 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 yêu cầu. Đ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.

Bất lợi 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 quản lý dữ liệu đơn giản và hiệu quả. Không giống như hệ thống OLAP, mục tiêu của hệ thống OLTP là phục vụ các giao dịch thời gian thực.

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

39. CLAUSE là gì?

Mệnh đề SQL được định nghĩa để giới hạn kết quả được thiết lập 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 được lưu trữ tự gọi cho đến khi nó đạt đến một số điều kiện biên. Hàm hoặc thủ tục đệ quy này giúp lập trình viên sử dụng cùng một bộ mã bất kỳ lúc nào.

41. Lệnh Union, lệnh trừ và lệnh Tương tác 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à nó loại bỏ các hàng trùng lặp khỏi bảng.

Toán tử MINUS được sử dụng để trả về các hàng từ truy vấn đầu tiên nhưng không phải từ truy vấn thứ hai. Các bản ghi đối sánh của truy vấn thứ nhất và thứ hai và 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 trả về bởi cả hai truy vấn.

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 tham chiếu trong mệnh đề WHERE để xác định bảng hoặc cột.

Thí dụ-.

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

Ở đây, st đề cập đến tên bí danh cho bảng sinh viên và Ex đề cập đến tên bí danh cho bảng kiểm tra.

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à nó không thể được cuộn lại. Lệnh DROP xóa một bảng khỏi cơ sở dữ liệu và không thể khôi phục hoạt động.

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. Các hàm vô hướng trả về một giá trị duy nhất dựa trên giá trị đầu vào.

Thí dụ -.

Aggregate - max (), count - Được tính đối với số.

Vô hướng - UCASE (), NOW () - Được tính đối với 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 tôi đang sao chép bảng sinh viên sang một bảng khác có cùng cấu trúc mà không có hàng nào được sao chép.

46. ​​Làm thế nào để tìm nạp các bản ghi chung từ hai bảng?

Bộ kết quả hồ sơ chung có thể đạt được bằng -.

Select studentID from student INTERSECT Select StudentID from Exam

47. Làm thế nào để tìm nạp 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

from (Chọn rowno, studentId từ học sinh) 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 để tìm nạp 5 ký tự đầu tiên của chuỗi là gì?

Có nhiều cách để tìm nạp 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 đối sánh mẫu?

Toán tử LIKE được sử dụng để đối sánh mẫu và nó có thể được sử dụng như -.

  1. % - Đối sánh không hoặc nhiều ký tự.
  2. _ (Dấu gạch dưới) - Ghép đúng một ký tự.

Thí dụ -.

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