Bagaimana untuk Melarikan Tanda Peratus Tersurat dalam Mod NO_BACKSLASH_ESCAPES MySQL?

Barbara Streisand
Lepaskan: 2024-11-25 14:09:12
asal
414 orang telah melayarinya

How to Escape Literal Percent Signs in MySQL's NO_BACKSLASH_ESCAPES Mode?

Melepaskan Log Masuk Peratus Literal NO_BACKSLASH_ESCAPES Mod MySQL

Dalam mod NO_BACKSLASH_ESCAPES MySQL, melepaskan % aksara menggunakan kaedah biasa (%) bukanlah diiktiraf. Ini boleh menimbulkan cabaran apabila melakukan pertanyaan LIKE yang melibatkan tanda peratus literal.

Untuk melepaskan % atau _ literal dalam mod ini, aksara melarikan diri mesti ditentukan selepas kata kunci LIKE. Sintaks untuk berbuat demikian ialah:

SELECT * FROM table_name
WHERE column_name LIKE 'pattern_with_escaped_character' escape 'escape_character';
Salin selepas log masuk

Sebagai contoh, pertimbangkan jadual dengan nilai berikut:

  • 5% diskaun
  • 50% diskaun

Untuk mendapatkan semula semua baris yang mengandungi "% off", pertanyaan berikut boleh digunakan:

SELECT * FROM mytable
WHERE mycol LIKE '5\% off' escape '\';
Salin selepas log masuk

Perhatikan bahawa aksara melarikan diri ialah garis miring ke belakang (), diikuti dengan tanda peratus literal.

Sebagai alternatif, untuk membuat pertanyaan yang berfungsi tanpa mengira mod NO_BACKSLASH_ESCAPES, cara yang berbeza watak melarikan diri boleh digunakan. Contohnya:

SELECT * FROM mytable
WHERE mycol LIKE '5|% off' escape '|';
Salin selepas log masuk

Dalam kes ini, aksara paip (|) digunakan sebagai aksara melarikan diri. Dengan menyatakan watak melarikan diri, adalah mungkin untuk mengelak mekanisme melarikan diri berasaskan garisan terbalik lalai dan mencapai hasil yang diingini.

Atas ialah kandungan terperinci Bagaimana untuk Melarikan Tanda Peratus Tersurat dalam Mod NO_BACKSLASH_ESCAPES MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan