Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tại sao tôi cần thoát kép (sử dụng 4 \) để tìm dấu gạch chéo ngược (\) trong SQL thuần túy?

Trước tiên, bạn thoát cho cú pháp chuỗi, sau đó cho LIKE cú pháp.

Trong LIKE ký tự %_ có ý nghĩa đặc biệt, vì vậy nếu bạn muốn tìm kiếm % theo nghĩa đen , bạn cần sử dụng \% và nếu bạn muốn tìm kiếm \% theo nghĩa đen bạn cần thoát khỏi dấu gạch chéo ngược như trong \\% .

Trong cú pháp chuỗi " rõ ràng là có ý nghĩa đặc biệt, vì vậy nếu bạn muốn bao gồm dấu ngoặc kép trong chuỗi, bạn cần phải đặt dấu ngoặc kép là \" và để bao gồm chữ \" trong chuỗi, bạn phải thoát khỏi dấu gạch chéo ngược như trong \\" .

Vì vậy, trong cả hai cú pháp, bạn phải thoát \ .

Nếu bạn không muốn sử dụng \ để thoát khỏi mô hình LIKE, bạn có thể sử dụng từ khóa ESCAPE. Ví dụ:

...  where test LIKE "a\\b%" ESCAPE '|';

Bằng cách này, bạn sẽ cần viết |% , |_ hoặc || để thoát khỏi các ký tự đặc biệt này.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. AWS rds - Làm cách nào để đọc từ một bản sao đã đọc bên trong ứng dụng Java?

  2. Thiếu kết nối cơ sở dữ liệu Mysql và thiếu mysql.sock

  3. Giới thiệu về tính khả dụng cao của cơ sở dữ liệu cho MySQL &MariaDB

  4. Lỗi sự kiện Mysql khi sử dụng php

  5. Làm cách nào để lưu trữ kết quả truy vấn MySQL trong Bảng khác?