Funkcija MySQL INSTR().

Funkcija Mysql Instr



U ovom vodiču naučit ćemo kako koristiti MySQL INSTR() funkciju za određivanje položaja prvog pojavljivanja zadanog podniza.

Funkcija MySQL INSTR().

Pomoću funkcije instr() možemo dati niz i podniz. Funkcija će odrediti postoji li podniz u izvornom nizu. Ako podniz postoji, funkcija će vratiti poziciju prvog pojavljivanja podniza u izvornom nizu.

Ako podniz ne postoji u izvornom nizu, funkcija će vratiti 0.







Sljedeće pokazuje sintaksu funkcije instr():



INSTR(src_niz, pod_niz);

Funkcija prihvaća dva glavna parametra:



  1. Src_string se odnosi na izvorni niz u kojem želite pretraživati.
  2. Sub_string definira podniz koji tražite.

Dobro je imati na umu da funkcija instr() ne razlikuje velika i mala slova. Dakle, funkcija će locirati samo odgovarajuće uzorke bez obzira na mala i mala slova,





Za izvođenje pretraživanja osjetljivog na velika i mala slova, možete koristiti druge alate, kao što je binarni operator.

Primjer upotrebe funkcije

Sljedeći primjeri pokazuju kako možemo koristiti funkciju instr() za traženje određenog podniza.



SELECT INSTR('MySQL je izvrstan mehanizam baze podataka', 'baza podataka') as pos;

Gornji primjer vratit će početnu poziciju niza 'baza podataka' iz izvornog niza. U ovom slučaju, položaj niza baze podataka je 21 kao što je prikazano u donjem izlazu:

pos|

---+

21|

Primjer 2

Možemo koristiti lower() ili upper funkcije za pretvaranje niza u mala ili velika slova. To nam može pomoći da prevladamo prirodu funkcije koja razlikuje velika i mala slova.

Primjer:

SELECT INSTR(lower('MySQL je sjajan mehanizam baze podataka'), lower('DATABASE')) as pos;

Proizlaziti:

pos|

---+

21|

Ovo će vratiti sličnu vrijednost kao u prvom primjeru, jer se izvorni niz i podniz pretvaraju u mala slova prije operacije pretraživanja.

Primjer 3

Također možemo koristiti funkciju instr() sa stupcem tablice, kao što je prikazano u donjoj sintaksi.

SELECT INSTR(naziv_stupca, 'podniz')

FROM ime_tablice;

Primjer:

STVARAJTE blogove (

id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,

naslov VARCHAR(255) NOT NULL,

sadržaj TEXT NOT NULL,

date_posted DATE NOT NULL,

autor VARCHAR(255) NOT NULL

);

Unesite neke podatke:

UMETNI U blogove (naslov, sadržaj, datum_objave, autor)

VRIJEDNOSTI ('Moja prva objava na blogu', 'Ovo je sadržaj mog prvog posta na blogu.', '2022-12-09', 'Jane Doe');

UMETNI U blogove (naslov, sadržaj, datum_objave, autor)

VRIJEDNOSTI ('Moj drugi post na blogu', 'Ovo je sadržaj mog drugog posta na blogu.', '10.12.2022.', 'Jane Doe');

UMETNI U blogove (naslov, sadržaj, datum_objave, autor)

VRIJEDNOSTI ('Moj treći post na blogu', 'Ovo je sadržaj mog trećeg posta na blogu.', '11.12.2022.', 'Jane Doe');

odaberite * iz blogova;

Rezultirajuća tablica:

Možemo upotrijebiti funkciju instr() da dobijemo položaj podniza 'blog' u stupcu sadržaja kao što je prikazano:

odaberite naslov, instr(sadržaj, 'post') iz blogova;

Proizlaziti:

Zaključak

U ovom ste vodiču naučili kako koristiti funkciju INSTR() u MySQL-u za pronalaženje položaja podniza unutar niza. Funkcija je osjetljiva na velika i mala slova. Stoga ćete možda trebati koristiti funkcije kao što su niži i gornji da biste pretvorili nizove za pretraživanje u željena velika i mala slova.