MySQL INSTR() funktsioon

Mysql Instr Funktsioon



Selles õpetuses õpime, kuidas kasutada funktsiooni MySQL INSTR() antud alamstringi esimese esinemise asukoha määramiseks.

MySQL INSTR() funktsioon

Funktsiooni instr() abil saame pakkuda stringi ja alamstringi. Funktsioon määrab, kas alamstring on lähtestringis olemas. Kui alamstring on olemas, tagastab funktsioon lähtestringis alamstringi esimese esinemiskoha asukoha.

Kui alamstringi lähtestringis ei eksisteeri, tagastab funktsioon 0.







Järgmine näitab funktsiooni instr() süntaksit:



INSTR(src_string, alamstring);

Funktsioon aktsepteerib kahte peamist parameetrit:



  1. src_string viitab lähtestringile, millest soovite otsida.
  2. Alamstring määrab alamstringi, mida otsite.

Hea on meeles pidada, et funktsioon instr() on tõstutundlik. Seetõttu leiab funktsioon ainult vastavad mustrid, jättes tähelepanuta tähemärgi algustähe,





Tõstutundliku otsingu tegemiseks võite kasutada muid tööriistu, näiteks kahendoperaatorit.

Funktsiooni kasutamise näide

Järgmised näited näitavad, kuidas saame kasutada funktsiooni instr() konkreetse alamstringi otsimiseks.



SELECT INSTR('MySQL on suurepärane andmebaasimootor', 'andmebaas') as pos;

Ülaltoodud näide tagastab lähtestringist stringi 'andmebaas' lähtepositsiooni. Sel juhul on andmebaasi stringi asukoht 21, nagu on näidatud allolevas väljundis:

pos|

---+

21|

Näide 2

Stringi väike- või suurtähtedeks teisendamiseks saame kasutada funktsioone low () või ülemine. See võib aidata meil ületada funktsiooni tõstutundlikkust.

Näide:

SELECT INSTR(lower('MySQL on fantastiline andmebaasimootor'), low('DATABASE')) as pos;

Tulemus:

pos|

---+

21|

See tagastab esimese näitega sarnase väärtuse, kuna lähtestring ja alamstring teisendatakse enne otsingutoimingut väiketähtedeks.

Näide 3

Funktsiooni instr() saame kasutada ka tabeli veeruga, nagu on näidatud allolevas süntaksis.

SELECT INSTR(veeru_nimi, 'alamstring')

FROM tabeli_nimi;

Näide:

LOO TABLE blogid (

ID INT MITTE NULL AUTO_INCREMENT PRIMARY KEY,

pealkiri VARCHAR(255) NOT NULL,

sisu TEXT NOT NULL,

date_posted DATE NOT NULL,

autor VARCHAR(255) NOT NULL

);

Sisestage mõned andmed:

INSERT INTO blogidesse (pealkiri, sisu, postituse_kuupäev, autor)

VÄÄRTUSED ('Minu esimene blogipostitus', 'See on minu esimese blogipostituse sisu'. '2022-12-09', 'Jane Doe');

INSERT INTO blogidesse (pealkiri, sisu, postituse_kuupäev, autor)

VÄÄRTUSED ('Minu teine ​​blogipostitus', 'See on minu teise blogipostituse sisu', '2022-12-10', 'Jane Doe');

INSERT INTO blogidesse (pealkiri, sisu, postituse_kuupäev, autor)

VÄÄRTUSED ('Minu kolmas blogipostitus', 'See on minu kolmanda blogipostituse sisu.', '2022-12-11', 'Jane Doe');

vali blogidest *;

Tulemustabel:

Funktsiooni instr () abil saame sisu veerus alamstringi 'blogi' asukoha hankida, nagu näidatud:

vali blogidest pealkiri, instr(sisu, 'postitus');

Tulemus:

Järeldus

Selles õpetuses õppisite, kuidas kasutada MySQL-is funktsiooni INSTR() alamstringi asukoha leidmiseks stringis. Funktsioon on tõstutundlik. Seetõttu peate võib-olla kasutama selliseid funktsioone nagu alumine ja ülemine, et teisendada otsingustringid soovitud juhtudele.