Theo quan điểm của tôi, câu trả lời @ Mr.Brownstone chỉ đúng một phần.
Backtick `
được sử dụng trong MySQL để phân định các chữ đại diện cho các định danh (không phải chuỗi).
Điều này cho phép bạn sử dụng các ký tự không thường được chấp nhận như dấu cách, từ dành riêng, v.v. làm định danh. Ví dụ:
SELECT * FROM `Strange table name`;
Ngoài ra, điều quan trọng là nó cũng cho phép trình phân tích cú pháp biết nếu bạn đang làm gì đó sai như chọn một cột không tồn tại. Ví dụ:
SELECT notexistingcolumn FROM atable;
Nếu atable
tồn tại nhưng notexistingcolumn
cột không tồn tại, nó sẽ được hiểu là chuỗi ký tự "không tồn tại" chọn nó làm giá trị (và có thể phát ra cảnh báo).
Thay vào đó, nếu bạn sử dụng:
SELECT `notexistingcolumn` FROM `atable`;
Nó sẽ nhận ra đó notexistingcolumn
là tên của một cột không tồn tại và gây ra lỗi.
Tôi nghĩ luôn thích hợp hơn để bao quanh các định danh với backticks bao gồm bí danh và cố gắng tránh sử dụng các từ dành riêng và các ký tự lạ cho các định danh.
Bạn có thể đọc thêm về backtick của MySQL trên https://dev.mysql.com/doc/refman/8.0/en/identifier.html .