Mysql
 sql >> база данни >  >> RDS >> Mysql

Защо трябва да избягвам двойно (използвам 4 \), за да намеря обратна наклонена черта ( \ ) в чист SQL?

Първо избягвате за синтаксиса на низа, след това за LIKE синтаксис.

В LIKE символи % и _ имат специално значение, така че ако искате да търсите литерал % , трябва да използвате \% и ако искате да търсите литерал \% трябва да избягвате обратната наклонена черта, както е в \\% .

В синтаксис на низ " очевидно има специално значение, така че ако искате да включите цитат в низа, трябва да го избягате като \" , и да включите литерал \" в низа трябва да избягвате обратната наклонена черта, както е в \\" .

Така че и в двата синтаксиса трябва да избягвате \ .

Ако не искате да използвате \ за да избегнете шаблона LIKE , можете да използвате ключовата дума ESCAPE. Например:

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

По този начин ще трябва да напишете |% , |_ или || за да избягате от тези специални знаци.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да добавя тегла към таблица на MySQL и да избирам произволни стойности според тях?

  2. Не виждам стойността на полето на MySQL BIT при използване на SELECT

  3. Как да изберете от MySQL, където името на таблицата е променлива

  4. Node.js MySQL се нуждае от постоянна връзка

  5. MySQL:Как да добавите един ден към полето datetime в заявката