MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

Bagaimana POSITION() Bekerja di MariaDB

Di MariaDB, POSITION() adalah fungsi string bawaan yang mengembalikan posisi kemunculan pertama substring dalam string lain. Ini adalah bagian dari ODBC 3.0.

POSITION(substr IN str) adalah sinonim untuk LOCATE(substr,str) .

POSITION() juga mirip dengan INSTR() fungsi, kecuali POSITION() menggunakan IN sintaks, dan urutan argumen dibalik antara dua fungsi ini.

Sintaks

Sintaksnya seperti ini:

POSITION(substr IN str) 

Dimana str adalah string, dan substr adalah substring untuk mengembalikan posisinya.

Contoh

Berikut ini contoh dasarnya:

SELECT POSITION('cute' IN 'My cute dog'); 

Hasil:

+-----------------------------------+| POSISI('imut' DI 'Anjing imutku') |+-----------------------------------+ | 4 |+------------------------------------+

Sensitivitas Huruf Besar

POSITION() melakukan pencarian peka huruf besar/kecil:

SELECT POSITION('CUTE' IN 'My cute dog'); 

Hasil:

+-----------------------------------+| POSISI('LUCU' DI 'Anjing imutku') |+-----------------------------------+ | 4 |+------------------------------------+

Beberapa Kejadian

Jika substring muncul lebih dari sekali, hanya posisi substring pertama (dari posisi awal) yang dikembalikan:

SELECT POSITION('cute' IN 'My cute dog is SOOOO cute!'); 

Hasil:

+------------------------------------------------- ----+| POSISI('imut' DI 'Anjing imutku sangat imut!') |+-------------------------------- ------------------+| 4 |+----------------------------------------------- ---+

Kecocokan Sebagian

Jika substring adalah bagian dari kata yang lebih besar, itu masih cocok:

SELECT POSITION('dog' IN 'My doggy is SOOO cute!'); 

Hasil:

+------------------------------------------------+ | POSISI('anjing' DI 'Doggy saya sangat lucu!') |+--------------------------------- ------------+| 4 |+---------------------------------------------+ 

Tetapi jika string hanya bagian dari substring, itu tidak cocok:

SELECT POSITION('doggy' IN 'My dog is SOOO cute!'); 

Hasil:

+------------------------------------------------+ | POSISI('anjing' DI 'Anjing saya sangat lucu!') |+--------------------------------- ------------+| 0 |+--------------------------------------------+ 

Ruang

Karakter spasi masih berupa string, jadi kita dapat menyertakan spasi di substring, meskipun itu satu-satunya karakter:

SELECT POSITION(' ' IN 'My dog'); 

Hasil:

+---------------------------+| POSISI(' ' DI 'Anjing saya') |+---------------------------+| 3 |+-----------------------+

String Kosong

Inilah yang terjadi ketika substring adalah string kosong:

SELECT POSITION('' IN 'My dog'); 

Hasil:

+--------------------------+| POSISI('' DI 'Anjing saya') |+--------------------------+| 1 |+--------------------------+

Tidak Cocok

Jika substring tidak ditemukan dalam string, POSITION() mengembalikan 0 :

SELECT position('cat' IN 'My dog'); 

Hasil:

+-----------------------------+| posisi('kucing' DI 'Anjing saya') |+----------------------------+| 0 |+-------------------------+

Argumen Null

Memberikan null untuk salah satu argumen menghasilkan null :

SELECT 
    POSITION(null IN 'My dog'),
    POSITION('dog' IN null); 

Hasil:

+------------------------+------------------ --------+| POSISI(null IN 'Anjing saya') | POSISI('anjing' DI null) |+----------------------------+----------- --------------+| NULL | NULL |+----------------------------+------------------ -------+

Menyediakan Jumlah Argumen yang Salah

Memanggil POSITION() dengan jumlah argumen yang salah, atau tanpa memberikan argumen apa pun menghasilkan kesalahan:

SELECT POSITION('dog'); 

Hasil:

ERROR 1064 (42000):Anda memiliki kesalahan dalam sintaks SQL Anda; periksa manual yang sesuai dengan versi server MariaDB Anda untuk sintaks yang tepat untuk digunakan di dekat ')' di baris 1

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Menginstal Lighttpd dengan PHP, MariaDB dan PhpMyAdmin di Ubuntu

  2. MariaDB CURRENT_ROLE() Dijelaskan

  3. Bagaimana CHARSET() Bekerja di MariaDB

  4. 4 Cara Menemukan Baris yang Mengandung Huruf Besar di MariaDB

  5. MariaDB JSON_VALID() Dijelaskan