MySQL INSTR() funksjon

Mysql Instr Funksjon



I denne opplæringen vil vi lære hvordan du bruker MySQL INSTR()-funksjonen til å bestemme posisjonen til den første forekomsten av en gitt delstreng.

MySQL INSTR() funksjon

Ved å bruke funksjonen instr() kan vi gi en streng og en understreng. Funksjonen vil avgjøre om delstrengen finnes i kildestrengen. Hvis delstrengen eksisterer, vil funksjonen returnere posisjonen til den første forekomsten av delstrengen i kildestrengen.

Hvis delstrengen ikke finnes i kildestrengen, vil funksjonen returnere 0.







Følgende viser syntaksen til instr()-funksjonen:



INSTR(kildestreng, understreng);

Funksjonen aksepterer to hovedparametere:



  1. src_string refererer til kildestrengen du ønsker å søke i.
  2. Understrengen definerer understrengen du søker etter.

Det er greit å huske på at instr()-funksjonen ikke skiller mellom store og små bokstaver. Derfor vil funksjonen bare lokalisere matchende mønstre uten hensyn til karakteren,





For å utføre et søk som skiller mellom store og små bokstaver, kan du bruke andre verktøy, for eksempel den binære operatoren.

Eksempel på funksjonsbruk

Følgende eksempler viser hvordan vi kan bruke funksjonen instr() til å søke etter en bestemt delstreng.



SELECT INSTR('MySQL er en fantastisk databasemotor', 'database') som pos;

Eksemplet ovenfor vil returnere startposisjonen til strengen 'database' fra kildestrengen. I dette tilfellet er posisjonen til databasestrengen 21 som vist i utdataene nedenfor:

pos|

---+

21|

Eksempel 2

Vi kan bruke lower() eller øvre funksjoner for å konvertere en streng til små eller store bokstaver. Dette kan hjelpe oss med å overvinne den store og små bokstavssensitiviteten til funksjonen.

Eksempel:

SELECT INSTR(lower('MySQL er en fantastisk databasemotor'), lower('DATABASE')) som pos;

Resultat:

pos|

---+

21|

Dette vil returnere en lignende verdi som det første eksemplet, ettersom kildestrengen og delstrengen konverteres til små bokstaver før søkeoperasjonen.

Eksempel 3

Vi kan også bruke funksjonen instr() med en tabellkolonne, som vist i syntaksen nedenfor.

VELG INSTR(kolonnenavn, 'understreng')

FROM tabellnavn;

Eksempel:

LAG TABELL blogger (

ID INT IKKE NULL AUTO_INCREMENT PRIMÆR NØKKEL,

tittel VARCHAR(255) NOT NULL,

innhold TEKST IKKE NULL,

date_posted DATE IKKE NULL,

forfatter VARCHAR(255) IKKE NULL

);

Sett inn noen data:

SETTE INN I blogger (tittel, innhold, date_posted, forfatter)

VERDIER ('Mitt første blogginnlegg', 'Dette er innholdet i mitt første blogginnlegg.', '2022-12-09', 'Jane Doe');

SETTE INN I blogger (tittel, innhold, date_posted, forfatter)

VERDIER ('Mitt andre blogginnlegg', 'Dette er innholdet i mitt andre blogginnlegg.', '2022-12-10', 'Jane Doe');

SETTE INN I blogger (tittel, innhold, date_posted, forfatter)

VERDIER ('Mitt tredje blogginnlegg', 'Dette er innholdet i mitt tredje blogginnlegg.', '2022-12-11', 'Jane Doe');

velg * fra blogger;

Resultattabell:

Vi kan bruke funksjonen instr() for å få posisjonen til understrengen ‘blogg’ i innholdskolonnen som vist:

velg tittel, instr(innhold, 'innlegg') fra blogger;

Resultat:

Konklusjon

I denne opplæringen lærte du hvordan du bruker funksjonen INSTR() i MySQL for å finne posisjonen til en understreng i en streng. Funksjonen skiller mellom store og små bokstaver. Derfor kan det hende du må bruke funksjoner som nedre og øvre for å konvertere søkestrengene til ønsket tilfeller.