🚨 Time is Running Out: Reserve Your Spot in the Lucky Draw & Claim Rewards! START NOW
Học để nhận các phần thưởng thực tế

Học để nhận các phần thưởng thực tế

Thu thập Bit, tăng Bằng cấp của bạn và nhận các phần thưởng thực tế!

Mới
Các khóa học Video
Các khóa học Video
Không dùng được nữa.
Mở rộng sự nghiệp của bạn với các khóa học video trực tuyến. Đi sâu vào cuộc phiêu lưu học tập của bạn!
Câu hỏi phỏng vấn SQL cho vị trí Quản trị dữ liệu

sql-interview-questions

SQL dường như là một trong những ngôn ngữ lập trình top đầu (phổ biến rộng rãi) hiện nay, mặc dù về mặt kỹ thuật, đây không phải là một ngôn ngữ lập trình! Vậy làm thế nào mà nó vẫn trở thành một trong những ngôn ngữ lập trình phổ biến? Đó chính xác là những gì tôi sẽ chia sẻ với bạn - cùng với những câu hỏi phỏng vấn SQL cần thiết nhất để giúp bạn tìm được công việc mơ ước của mình!

Trong hướng dẫn này, chúng tôi sẽ đề cập đến những câu hỏi phỏng vấn SQL cơ bản như SQL là gì? MySQL là gì? và nâng cao mà nhà tuyển dụng có thể hỏi bạn. Sau đó, chúng tôi sẽ nói về một vài điều chung cần ghi nhớ trước, trong và sau khi phỏng vấn xin việc.

Mục lục

Nguyên tắc cơ bản của SQL

Như đã nói, chúng ta sẽ bắt đầu với một trong những câu hỏi phỏng vấn SQL thường gặp nhất.

Phiếu giảm giá mới nhất EXCLUSIVE 25% OFF được tìm thấy:

Câu hỏi 1: SQL là gì?

Lúc đầu, tôi đã đề cập rằng SQL hoàn toàn không phải là ngôn ngữ lập trình. Vậy SQL là gì?

SQL (Structured Query Language) là viết tắt của Ngôn ngữ truy vấn có cấu trúc. Nó chủ yếu là một ngôn ngữ quản lý cơ sở dữ liệu. Nó không phải là ngôn ngữ lập trình tự nhiên, nhưng tiêu chuẩn của nó hoàn toàn có thể mở rộng nó thành ngôn ngữ lập trình - đó là lý do tại sao hầu hết mọi người gọi nó là một “ngôn ngữ lập trình”.

Câu hỏi 2: Sự khác biệt giữa lệnh ‘delete’ và ‘truncate’ là gì?

Đây là một trong những ví dụ tốt hơn về các câu hỏi phỏng vấn SQL cơ bản.

Sự khác biệt chính “delete” là lệnh xóa một hàng từ bảng, trong khi “truncate” xóa tất cả chúng.

Một điểm khác biệt nữa là khi sử dụng “delete”, nếu có sự cố hoặc không theo kế hoạch, bạn có thể thực hiện khôi phục dữ liệu - điều này không thể thực hiện được sau khi lệnh “truncate”  được thực hiện. Ngoài ra, lệnh truncate thực hiện nhanh hơn.

Câu hỏi 3: SQL Server là gì?

Bạn chắc chắn sẽ nhận được một số câu hỏi phỏng vấn SQL Server trong buổi phỏng vấn xin việc của mình, vì vậy tôi đã thêm một số câu trong hướng dẫn này.

SQL Server là một hệ thống quản lý cơ sở dữ liệu (Database Management System - DBMS). Nó tập hợp và phân tích dữ liệu, cập nhật và quản trị cơ sở dữ liệu.

Xem & so sánh TOP nền tảng học online cạnh nhau

Did you know?

Bạn đã bao giờ băn khoăn nền tảng học online nào tốt nhất cho sự nghiệp của bạn chưa?

Câu hỏi 4: MySQL là gì?

Cũng như SQL Server, các câu hỏi về MySQL cũng phổ biến trong các cuộc phỏng vấn việc làm liên quan đến SQL. Vậy MySQL là gì?

MySQLmột hệ thống quản lý cơ sở dữ liệu nguồn mở. Nó cung cấp một loạt các chức năng và giao diện có sẵn, có hỗ trợ đa nền tảng và sở hữu các công cụ tiện lợi để giúp bạn làm việc nhanh chóng.

Câu hỏi 5: ‘table’ và ‘field’ là gì?

Đừng để bị lừa với những câu hỏi phỏng vấn SQL như thế này. Một “table“ trong hệ thống dữ liệu được tổ chức đơn giản thành các hàng và cột riêng biệt. Một “field” là một số cột trong một bảng.

Câu hỏi 6: ‘join’ là gì?

Lệnh “join” kết hợp các hàng từ các bảng khác nhau. Cách các hàng này được kết hợp phụ thuộc vào cột liên quan tham gia chúng. Với lệnh này, bạn có thể hợp nhất hai bảng thành một hoặc đơn giản là truyền dữ liệu từ bảng này sang bảng khác.

Tổng cộng, có bốn loại khác nhau của “join”: inner (bên trong), full (đầy đủ), left (trái) và right (phải).

Câu hỏi 7: 'view' là gì?

Một “view” đơn giản là một đại diện ảo của một “table“. Hơn nữa, các view có thể có nhiều dữ liệu được biểu thị và kết hợp - điều đó rất phụ thuộc vào tình huống và mối quan hệ.

Câu hỏi 8: ‘constraint’ là gì?

Constraints” là các lệnh được sử dụng để gạch dưới và xác định số lượng của một loại dữ liệu cụ thể được sử dụng trong một bảng duy nhất.

Câu hỏi 9: Làm thế nào để hiển thị thời gian và ngày hiện tại với các truy vấn SQL?

Làm thế nào để” là những câu hỏi phỏng vấn SQL khá phổ biến và bình thường mà bạn sẽ gặp phải. Chính vì vậy, đừng ngạc nhiên nếu bạn nhận được một hoặc hai câu hỏi như thể trong cuộc phỏng vấn.

Nếu học SQL thì bạn sẽ biết rằng SQL có một lệnh sẵn có GetDate() để truy xuất và hiển thị thời gian và ngày hiện tại.

Câu hỏi 10: ‘denormalization’ là gì?

Denormalization là một quá trình khi bạn truy cập cơ sở dữ liệu từ các biểu mẫu cao hơn đối với các biểu mẫu thấp hơn. Quá trình này được thực hiện để tăng hiệu suất cơ sở dữ liệu.

Câu hỏi 11: ‘query’ là gì?

Nó có vẻ giống như một trong những câu hỏi tự giải thích nhiều hơn và bạn đã đúng nếu như suy nghĩ như vậy.

Như chính thuật ngữ này, một query (truy vấn) chỉ đơn giản là một câu hỏi. Câu hỏi này được gửi đến cơ sở dữ liệu thông qua một mã code cụ thể để lấy một số loại thông tin từ nó.

Câu hỏi 12: Các tập con khác nhau là gì?

Có ba tập con cần biết trong các câu hỏi phỏng vấn SQL:

  1. Ngôn ngữ định nghĩa dữ liệu - nó cho phép thực hiện các hoạt động như tạo, xóa, thay đổi đối tượng.
  2. Ngôn ngữ thao tác dữ liệu - nó giúp chèn, cập nhật, truy xuất dữ liệu từ cơ sở dữ liệu hoặc xóa nó.
  3. Ngôn ngữ điều khiển dữ liệu - nó cho phép kiểm soát truy cập vào cơ sở dữ liệu. Nó có thể cấp hoặc thu hồi quyền truy cập.

Câu hỏi 13: Primary Key là gì?

Khóa chính (Primary key) là một cột hoặc một tập hợp các cột xác định duy nhất mỗi hàng trong bảng.

Câu hỏi 14: Unique Key là gì?

Khóa duy nhất (Unique Key) là những gì xác định duy nhất một hàng trong bảng như được đề cập trong phần giải thích Khóa chính.

Câu hỏi 15: Tính toàn vẹn dữ liệu là gì?

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

SQL interview questions - query codes

Câu hỏi phỏng vấn SQL nâng cao

Như vậy, chúng tôi đã đề cập đến một số câu hỏi phỏng vấn SQL cơ bản, chắc hẳn bạn đã hiểu rõ hơn về bắt đầu một cuộc phỏng vấn xin việc sẽ như thế nào. Tuy nhiên, sau khi nhà tuyển dụng thấy rằng bạn đã trả lời các câu hỏi phỏng vấn SQL cơ bản, họ vẫn có thể đưa ra một số câu hỏi nâng cao. Đây là lý do tại sao nên chuẩn bị tốt hơn - bây giờ chúng ta sẽ chuyển sang các câu hỏi khó hơn.

Câu hỏi 1: Hãy giải thích ‘index’

Index (chỉ mục) là phương pháp nâng cao hiệu suất, cụ thể là - lấy thông tin từ cơ sở dữ liệu với tốc độ và hiệu quả cao hơn.

Tổng cộng, có thể có ba loại chỉ mục - clustered (phân cụm), non-clustered (không phân cụm) và unique (duy nhất).

Các chỉ mục Clustered (phân cụm) sắp xếp lại bảng và tìm kiếm thông tin với việc sử dụng các giá trị chính, trong khi các chỉ mục non-clustered (không phân cụm) duy trì thứ tự của bảng. Các chỉ mục unique (duy nhất) cấm các trường có các giá trị trùng lặp.

Một bảng chỉ có thể có một chỉ mục clustered, nhưng lại có thể có nhiều chỉ mục non-clustered.

Mặc dù có vẻ không giống một trong những câu hỏi phỏng vấn SQL nâng cao, nhưng khó khăn ở đây là phần “giải thích”. Điều đó thực sự làm câu hỏi này được nâng cao - nhà tuyển dụng có thể yêu cầu giải thích hoặc mở rộng câu trả lời của bạn.

Câu hỏi 2: Phải làm gì khi quên mật khẩu gốc?

Nếu quên hoặc mất mật khẩu gốc (root password), hãy khởi động cơ sở dữ liệu bằng lệnh của “skip-grants-table”. Sau khi đặt mật khẩu mới, hãy khởi động lại cơ sở dữ liệu ở chế độ bình thường và nhập mật khẩu mới.

Câu hỏi 3: Giá trị NULL bằng 0 được không?

Câu trả lời cho câu hỏi phỏng vấn SQL này là không.

Một “số 0 ” (zero) là một cách thức số, trong khi NULL  biểu thị sự vắng mặt của một ký tự, cho dù là vì không được biết hoặc không có sẵn. Theo cùng một logic, NULL không giống như một khoảng trắng, vì nó chỉ đơn giản là một ký tự.

Câu hỏi 4: Nên làm gì nếu đĩa dữ liệu bị quá tải?

Bạn có thể gặp các trường hợp phải điền vào đĩa dữ liệu. Nhưng sẽ không thể tiếp tục làm bất cứ điều gì nếu nó quá tải.

Điều bạn cần biết với câu hỏi phỏng vấn SQL này là trong tình huống này cần áp dụng liên kết mềm. Các liên kết này tạo ra một vị trí mà bạn có thể lưu trữ .frm.idb file - và đó là chính xác những gì bạn nên làm. Điều này sẽ giải quyết vấn đề quá tải.

Câu hỏi 5: ‘auto-increment’ là gì?

Autoincrement” là một lệnh cho phép tạo ra và tạo thành số duy nhất cho một bản ghi mới trong bảng.

Từ khóa này có thể được sử dụng trên nhiều nền tảng, nhưng có thể thay đổi một chút. Vì rất có thể bạn sẽ nhận được một số câu hỏi phỏng vấn SQL Server, tôi sẽ nói cho bạn biết - sự thay thế cho lệnh auto incrementtrong một SQL Serveridentity”.

Câu hỏi 6: Liệt kê các thành phần tạo nên cấu ​​trúc MySQL cơ bản nhất.

Chúng ta hãy thử kết hợp trong một số câu hỏi phỏng vấn MySQL.

Sau khi đã hiểu được MySQL là gì, bây giờ, chúng ta hãy xem thành phần tạo nên cấu trúc MySQL. MySQL cơ bản nhất được tạo từ ba thành phần chính - query optimizer, connection managerpluggable engines.

Câu hỏi 7: Cách tạo một bảng trống từ bảng hiện có.

Đây là một ví dụ về cách làm:

Select * into employeecopy from employee where 1=2

Câu hỏi 8: Làm thế nào có được phiên bản SQL hiện tại?

Nghe thì có vẻ là một trong những câu hỏi cơ SQL bản hơn, nhưng nhiều người có thể gặp vấn đề với nó vì chưa nghiên cứu trong quá trình học SQL - nó trở thành một câu hỏi mẹo.

Cách mà có được phiên bản SQL mới nhất là thực hiện lệnh này:

SELECT VERSION()

Câu hỏi 9: Làm thế nào để lấy các bản ghi lẻ thay thế từ bảng?

Bạn sẽ thực hiện được điều đó bằng cách sử dụng lệnh này:

Select employeeId from (Select rowno, employeetId from employee) where mod(rowno,2)=1

Câu hỏi 10: Chọn một bản ghi duy nhất từ ​​bảng.

Cách chọn các bản ghi duy nhất từ ​​một bảng đơn là sử dụng lệnh “distinct”. Đây là một ví dụ:

Select DISTINCT employeeID from Employee

Câu hỏi 11: Giải thích các biến của SQL.

Với các câu hỏi phỏng vấn, bạn cần biết rằng trong SQL có hai biến khác nhau - local (cục bộ) và global (toàn cục).

Biến cục bộ là những biến chỉ có thể tồn tại trong một, một hàm đơn nhất. Đối lập với điều đó, các biến toàn cục có thể được định vị thông qua toàn bộ chương trình.

Câu hỏi 12: ‘datawarehouse’ là gì?

Một “datawarehouse” thực hiện một chức năng tương tự như một nhà kho chỉ chứa dữ liệu.

Trong một “datawarehouse”, dữ liệu được lưu trữ từ nhiều lĩnh vực và các nguồn khác nhau. Ở đó, chúng được sắp xếp ra và chuẩn bị cho việc sử dụng.

Câu hỏi 13: Cách sử dụng chính ‘recursive stored procedure’ là gì?

Một recursive stored procedure khi một thủ tục tự thực hiện đến một điểm khi đạt đến một ranh giới đã đặt.

Lợi ích chính của thủ tục này là cho phép các lập trình viên sử dụng cùng một mã code nhiều lần.

Câu hỏi 14: Làm thế nào để lấy 3 ký tự đầu tiên từ một chuỗi ký tự?

Có khá nhiều cách để làm điều này, nhưng đây là một trong những cách phổ biến và dễ dàng hơn:

Select SUBSTRING(EmployeeSurname,1,5) as employeesurname from employee

Udacity Review Logo
Ưu điểm
  • Easy to use with a learn-by-doing approach
  • Offers quality content
  • Gamified in-browser coding experience
Những tính năng chính
  • Free certificates of completion
  • Focused on data science skills
  • Flexible learning timetable
Udacity
Ưu điểm
  • High-quality courses
  • Nanodegree programs
  • Student Career services
Những tính năng chính
  • Nanodegree programs
  • Suitable for enterprises
  • Paid certificates of completion
Edx
Ưu điểm
  • A wide range of learning programs
  • University-level courses
  • Easy to navigate
Những tính năng chính
  • University-level courses
  • Suitable for enterprises
  • Verified certificates of completion

Câu hỏi 15: Cách lấy các bản ghi chung từ hai bảng.

Bạn có thể thực hiện tác lệnh bên dưới để làm điều này:

Select employeeID from employee. INTERSECT Select EmployeeID from WorkShift

Như vậy, chắc hẳn bây giờ bạn đã quen hơn với cả các câu hỏi phỏng vấn SQL cơ bản và nâng cao. Bạn đã biết những gì sẽ có thể diễn ra trong cuộc phỏng vấn xin việc của mình. Tiếp theo, hãy cùng chuyển sang một số mẹo chung mà tôi đã hứa là sẽ chia sẻ với bạn.

Bí kíp chung

Tôi sẽ không nói đến những lời khuyên rất phổ biến như “ngủ một chút ” hay “mặc một bộ đồ phù hợp” nữa.

SQL interview questions - work desk

Trong đào tạo thể thao, sẽ có một phương pháp đào tạo cụ thể trước mỗi cuộc thi. Khi ngày thi đấu tới gần, họ sẽ phải giảm khối lượng đào tạo, tăng cường độ luyện tập trong thời gian ngắn hơn và hãy cố gắng hơn bao giờ hết.

Đây là một quan điểm tuyệt vời có thể áp dụng để chuẩn bị cho tất cả các câu hỏi và câu trả lời phỏng vấn SQL. Khi cuộc phỏng vấn tới gần, bạn nên dành ít thời gian để chuẩn bị, hãy thực sự tập trung vào tài liệu mà bạn phải học. Điều đó có nghĩa là không làm nhiều việc cùng lúc, không nghỉ giải lao giữa giờ, v.v... Điều này sẽ giúp bạn bớt căng thẳng và cảm thấy tự tin hơn khi ngày phỏng vấn đến gần.

Tự tin là một điều khác nữa cần nhắc tới. Hãy cố gắng và trông thật tự tin, nhưng đừng lạm dụng quá tránh để không trở nên tự phụ. Sẽ có sự khác biệt rõ ràng khi nói rằng bạn có kinh nghiệm khá trong lĩnh vực này và nói rằng bạn là lập trình viên giỏi nhất.

Có khả năng là sẽ có những sự từ chối sau các cuộc phỏng vấn cho đến khi bạn có được công việc mơ ước đó. Tuy nhiên, không nên xem đó là một điều tiêu cực - bạn sẽ càng có được thêm cơ hội phỏng vấn, được tham gia trả lời các câu hỏi phỏng vấn SQL cơ bản và nâng cao. Bạn chắc chắn sẽ cảm thấy tự tin hơn, có sự chuẩn bị tốt hơn và lĩnh hội thêm rất nhiều điều trong khi học SQL.

Kết luận

Hiển nhiên rằng ngày càng có nhiều các lập trình viên giỏi và cần thiết với thị trường. Các nhà tuyển dụng sẵn sàng trả mức lương khổng lồ cho những người có thể chứng minh hiệu suất, chất lượng trong các lĩnh vực lập trình và phát triển.

SQL là một trong những ngôn ngữ phổ biến nhất, hiện đang có nhu cầu cao. Mọi người đánh giá cao sự đơn giản, khả năng được áp dụng và sử dụng trong nhiều lĩnh vực khác nhau của ngôn ngữ này. Thật sự sẽ khá dễ dàng để học SQL nhưng những người thực sự thành thạo về nó vẫn được đánh giá rất cao.

Có rất nhiều câu hỏi khác nhau liên quan đến SQL mà nhà tuyển dụng có thể hỏi bạn. Trong hướng dẫn này, chúng tôi chỉ đề cập đến những vấn đề cơ bản như SQL là gì? MySQL là gì? - nó chỉ là phần nổi của một tảng băng chìm. Nếu bạn nghiêm túc về công việc, bạn hãy nên xem xét nghiên cứu sâu hơn về chủ đề này.

Vì vậy, chúng tôi đã đề cập đến các câu hỏi cơ bản và nâng cao và những ví dụ về SQL phổ biến nhất. Hơn nữa, tôi cũng cung cấp một số lời khuyên chung để giúp bạn có thêm cơ hội đạt được công việc mong ước.

Nếu bạn cảm thấy cần phải nâng cao kỹ năng của mình, hãy nhớ đăng ký khóa học Hướng dẫn SQL tính tương tác của chúng tôi . Nếu bạn chỉ mới bắt đầu, hãy xem SQL cho Người mới bắt đầu hoặc Lý thuyết SQL.

Giới thiệu chuyên gia & nhà phân tích của bài viết

Bởi Aaron S.

Tổng biên tập

Đã hoàn thành bằng thạc sĩ về kinh tế, chính trị; văn hóa cho khu vực Đông Á, Aaron đã viết các bài báo khoa học có phân tích so sánh về sự khác biệt các hình thức tập thể của chủ nghĩa tư bản giữa Mỹ, phương Tây và Nhật Bản, 1945-2020. Với gần mộ...
Aaron S., Tổng biên tập
Đã hoàn thành bằng thạc sĩ về kinh tế, chính trị; văn hóa cho khu vực Đông Á, Aaron đã viết các bài báo khoa học có phân tích so sánh về sự khác biệt các hình thức tập thể của chủ nghĩa tư bản giữa Mỹ, phương Tây và Nhật Bản, 1945-2020.
Với gần một thập kỷ kinh nghiệm trong ngành FinTech, Aaron hiểu tất cả những vấn đề và khó khăn lớn nhất mà những người đam mê tiền điện tử gặp phải. Anh là một nhà phân tích đam mê, quan tâm đến nội dung dựa trên dữ liệu và dựa trên thực tế, cũng như nội dung phù hợp với cả người dùng Web3 và người mới trong ngành.
Aaron là người có thể tiếp cận mọi thứ và bất cứ thứ gì liên quan đến tiền kỹ thuật số. Với niềm đam mê lớn dành cho blockchain; đào tạo Web3, Aaron cố gắng biến đổi không gian như chúng ta biết và làm cho nó trở nên dễ tiếp cận hơn với những người mới bắt đầu hoàn toàn.
Aaron được nhiều cơ quan báo chí uy tín trích dẫn và bản thân anh cũng là một tác giả đã xuất bản sách. Ngay cả trong thời gian rảnh rỗi, anh vẫn thích nghiên cứu xu hướng thị trường và tìm kiếm siêu tân tinh tiếp theo.

3 mã phiếu giảm giá phổ biến nhất

Đã xác minh

EXCLUSIVE 25% OFF

On DataCamp Subscriptions
Đánh giá 5.0
Đã xác minh

UP TO 70% OFF

Personalized Udacity Discount
Đánh giá 5.0

Để lại phản hồi trung thực của bạn

Hãy để lại ý kiến xác thực của bạn & giúp hàng nghìn người chọn được nền tảng học online tốt nhất. Tất cả phản hồi, dù tích cực hay tiêu cực, đều được chấp nhận miễn là chúng trung thực. Chúng tôi không công khai phản hồi thiên vị hoặc thư rác. Vì vậy, nếu bạn muốn chia sẻ kinh nghiệm, ý kiến hoặc đưa ra lời khuyên - phần này dành cho bạn!

Câu hỏi thường gặp

Cách chọn trang khóa học trực tuyến nào để đánh giá như thế nào?

Chúng tôi chọn các nền tảng học online theo quy mô thị trường, mức độ phổ biến của chúng và quan trọng nhất là yêu cầu hoặc sở thích chung của người dùng để đọc các bài đánh giá MOOC chân thật về một số nền tảng học online nhất định.

Bạn cần nghiên cứu nhiều như thế nào trước khi viết đánh giá e-learning?

Các chuyên gia MOOC tận tâm của chúng tôi thực hiện nghiên cứu trong nhiều tuần - chỉ sau đó mới có thể nói rằng các đánh giá của họ về các khía cạnh khác nhau là cuối cùng và hoàn chỉnh. Mặc dù mất rất nhiều thời gian, nhưng đây là cách duy nhất chúng tôi có thể đảm bảo rằng tất cả các tính năng thiết yếu của nền tảng học online đều được thử nghiệm và kiểm tra và phán quyết dựa trên dữ liệu thực.

Khía cạnh nào là quan trọng nhất khi chọn nền tảng học online tốt nhất?

Sẽ không đúng nếu chỉ chọn một khía cạnh trong số lựa chọn: các ưu tiên phụ thuộc vào từng cá nhân, giá trị, mong muốn và mục tiêu của họ. Một tính năng quan trọng đối với một người có thể hoàn toàn không liên quan đến người kia. Nhưng dù sao, tất cả người dùng sẽ đồng ý rằng chất lượng tốt của tài liệu học tập là điều bắt buộc đối với các nền tảng học online.

Nền tảng đánh giá e-learning này khác với những cái khác như thế nào?

Mỗi nền tảng đánh giá MOOC là duy nhất và có các mục tiêu và giá trị riêng. Các bài đánh giá e-learning của chúng tôi là chân thực 100% và được viết sau khi thực hiện phân tích cẩn thận. Đó là mục tiêu mà rất nhiều trang đánh giá e-learning còn thiếu, vì vậy chúng tôi coi đó là siêu năng lực của mình!

binance
×
Đã xác minh

$600 WELCOME BONUS

Earn Huge Exclusive Binance Learners Rewards
Đánh giá