Sử dụng Backticks, Double Quotes và Single Quotes khi truy vấn cơ sở dữ liệu MySQL có thể rút gọn thành hai điểm cơ bản
- Dấu ngoặc kép [Đơn và Đôi] được sử dụng xung quanh chuỗi
- Backticks được sử dụng xung quanh định danh bảng và cột
Dấu ngoặc kép
Sử dụng dấu ngoặc kép ở đây là một số ví dụ đầu vào và đầu ra
SELECT "test", "'test'", "''test''", "te""st";
Đầu ra trông như thế này
Gói các trích dẫn đơn bên trong các trích dẫn kép sẽ hủy bỏ hành vi mong đợi của các trích dẫn đơn trong Truy vấn MySQL và thay vào đó coi nó như một phần của chuỗi. Điều này có thể được nhìn thấy trong các cột 2 và 3 trong ví dụ trên
Chèn hai dấu ngoặc kép vào giữa chuỗi sẽ hủy bỏ một trong số chúng
Dấu nháy đơn
Sử dụng dấu ngoặc đơn ở đây là một số ví dụ đầu vào và đầu ra
SELECT 'test', '"test"', '""test""', 'te''st';
Đầu ra trông như thế này
Như thể hiện trong phần trình diễn ở trên, dấu ngoặc đơn hoạt động giống như dấu ngoặc kép trong các ngữ cảnh này
Sử dụng dấu ngoặc đơn và dấu ngoặc kép cùng nhau
Thông thường sẽ có một sự co lại trong một chuỗi hoặc một trích dẫn trực tiếp. Trong các tình huống như trong các báo cáo khảo sát của NPS hoặc các biểu mẫu phản hồi khác của khách hàng, trường hợp này thường xảy ra. Trong những trường hợp này, sử dụng dấu ngoặc kép để bọc một chuỗi văn bản có chứa một dấu nháy đơn như They've sẽ giữ dấu nháy đơn trong chuỗi dưới dạng dấu nháy đơn
Trong trường hợp này, việc trình bày một chuỗi có rút gọn sẽ trông như thế này
SELECT "They've found this tutorial to be helpful"
Đầu ra trông như thế này
Hoặc, nếu bạn cần sử dụng dấu ngoặc kép để trình bày báo giá phản hồi của khách hàng trong chuỗi, thì bạn có thể sử dụng dấu ngoặc đơn để bao toàn bộ chuỗi
SELECT 'They responded, "We found this tutorial helpful"'
Nếu bạn cần sử dụng dấu ngoặc đơn và dấu ngoặc kép trong một chuỗi chứa cả dấu ngoặc kép và dấu ngoặc kép, bạn sẽ cần sử dụng dấu gạch chéo ngược ‘' để hủy bỏ ký tự sau. Ví dụ. một chuỗi chứa ' này sẽ nhận ra dấu gạch chéo ngược như một hướng dẫn để hủy bỏ ý nghĩa cú pháp của trích dẫn đơn lẻ và thay vào đó chèn nó vào chuỗi dưới dạng dấu nháy đơn
SELECT 'They\'ve responded, "We found this tutorial helpful"'
đánh dấu ngược
Backticks được sử dụng trong MySQL để chọn các cột và bảng từ nguồn MySQL của bạn. Trong ví dụ bên dưới, chúng tôi đang gọi đến bảng có tiêu đề Album
và cột Title
. Sử dụng backticks, chúng tôi đang biểu thị rằng đó là tên cột và bảng
SELECT `Album`.`Title`
FROM `Album` AS `Album`
GROUP BY `Album`.`Title`
ORDER BY `Title` ASC
LIMIT 10;
Dấu gạch ngược cho tên cột có thể không cần thiết
SELECT Album.Title
FROM Album AS Album
GROUP BY Album.Title
ORDER BY Title ASC
LIMIT 10;
Cả hai truy vấn này sẽ trả về cùng một kết quả
Để tất cả chúng cùng nhau
Truy vấn sau đây sẽ sử dụng tất cả những gì chúng ta đã học ở đây, bao gồm dấu nháy kép, dấu nháy đơn và dấu nháy ngược
Sự khác biệt đáng kể nhất giữa dấu ngoặc đơn và dấu ngoặc kép nằm khi chúng ta nội suy chuỗi và biến. Trích dẫn đơn không nội suy chuỗi và các biến. Nội dung bên trong trích dẫn đơn in ra chính xác như nó vốn có. Trong hầu hết các trường hợp, không có phần tổng hợp của bất kỳ biến hoặc chuỗi thoát nào bên trong dấu nháy đơn
Tuy nhiên, trong trường hợp trích dẫn kép, biến được viết bên trong dấu ngoặc kép sẽ được nội suy với chuỗi. Nó có nghĩa là biến trong chuỗi sẽ được đánh giá. Do đó, rất dễ sử dụng dấu ngoặc kép khi nội suy chuỗi và các biến. Ưu điểm của dấu nháy kép so với dấu nháy đơn là chúng ta không cần nối chuỗi và biến bằng cách sử dụng. nhà điều hành. Tuy nhiên, vì các biến cần được đánh giá trong chuỗi, nên sử dụng dấu nháy kép sẽ chậm hơn một chút so với sử dụng dấu nháy đơn
Ví dụ: tạo một biến $name và viết chuỗi Bond vào đó. Tiếp theo, viết chuỗi Tên là $name. và kèm theo chuỗi với dấu ngoặc kép. Sử dụng hàm echo để in chuỗi. Tương tự, kèm theo chuỗi chính xác với một trích dẫn trong dòng sau
Mã ví dụ
đầu ra
________số 8_______Phần này sẽ thảo luận về chuỗi thoát sử dụng dấu ngoặc kép và dấu nháy đơn trong PHP. Các trình tự thoát có thể được sử dụng bên trong dấu ngoặc kép để thoát các ký tự. Trong khi đó, hầu hết các chuỗi thoát không được diễn giải trong một trích dẫn. Tuy nhiên, có một ngoại lệ để thoát khỏi dấu nháy đơn
Không cần thoát khỏi dấu nháy đơn nếu chúng ta viết dấu nháy đơn trong chuỗi khi sử dụng dấu nháy kép. Tuy nhiên, trong trường hợp trích dẫn đơn lẻ, chúng ta cần thoát nó bằng cách sử dụng \'. Ví dụ được hiển thị dưới đây
Mã ví dụ
đầu ra
Mustafa Ahmed's "Think and grow rich". Mustafa Ahmed's \"Think and grow rich\".
Trong đoạn mã trên, rõ ràng là dấu nháy đơn không được thoát bằng cách sử dụng dấu ngoặc kép. Dấu ngoặc kép cũng được thoát bên trong dấu ngoặc kép bằng ký tự thoát. Trong khi đó, trong trường hợp trích dẫn đơn, dấu nháy đơn được thoát bằng ký tự thoát. Trong trường hợp sau, dấu ngoặc kép không thoát khi sử dụng ký tự thoát