SQL karakterlánc egyenlő

Sql Karakterlanc Egyenlo



A karakterlánc-műveletek a világfejlesztés leggyakoribb és leggyakrabban előforduló feladatai közé tartoznak. Még ha adatbázisokról van szó, az olyan feladatok, mint a karakterlánc-összehasonlítás, döntő szerepet játszanak az adatszűrésben és az egyező rekordok keresésében.

Legyen szó konkrét rekordok kereséséről, az adatok szűréséről vagy különféle adatkezelési feladatok végrehajtásáról, kulcsfontosságú annak megértése, hogy az SQL hogyan kezeli az egyenlő karakterláncot.

Ebben az útmutatóban a támogatott szintaxis, a használat és a különböző példák jobb megértése érdekében megvizsgáljuk az SQL karakterláncok egyenlőségét.







SQL String egyenlő szintaxis

A karakterlánc-szűrést többféleképpen is végrehajthatja. Az egyik leggyakoribb és legegyszerűbb technika azonban a WHERE záradék használata.



Az alábbiakban látható a záradék szintaxisa:



SELECT oszlop1, oszlop2, ...
FROM tábla_neve
WHERE oszlopnév = 'érték';

Ebben az esetben az „oszlop_neve” azt az oszlopot jelöli, amelyet összehasonlítani szeretnénk, míg az érték arra a karakterlánc-literálra vonatkozik, amelyben összehasonlítani szeretnénk.





Ez az egyenlőség operátort használja, amely ellenőrzi, hogy a megadott karakterláncok egyenlőek-e.

Minta adat

Mielőtt belemerülnénk a használatba, állítsunk fel egy alapvető mintatáblázatot, amely lehetővé teszi a felhasználás gyakorlatiasabb bemutatását.



Tekintsük a példatáblázatot és a mintaadatokat az alábbiak szerint:

CREATE TABLE alkalmazottak (
worker_id INT ELSŐDLEGES KULCS AUTO_INCREMENT,
alkalmazott_neve VARCHAR(100),
osztály_azonosítója INT
);


INSERT INTO alkalmazottak (alkalmazotti_név, részlegazonosító) ÉRTÉKEK
('Phelps Dane', 101),
(„Alana L”, 102),
('E Johnson', 103),
('Daniel B', 104),
('Break Davis', 105),
('Jessica Wilson', 106),
('Daniel Garcia', 107),
('Karen Martinez', 108),
('Anthony Robinson', 109),
(„Sophia Clark”, 110);

Ezzel létre kell hozni egy táblázatot, és hozzá kell adni a mintarekordokat a táblázathoz.

1. példa: Alapvető használat

Tekintsük a következő példalekérdezést, amely a string equals operátort használja egy megfelelő rekord kereséséhez, ahol az alkalmazott neve megegyezik a Karen Martinez névvel.

KIVÁLASZTÁS *
alkalmazottaktól
WHERE munkavállaló_neve = 'Karen Martinez';

Az adott lekérdezésben az „employees” táblából kijelöljük az összes olyan oszlopot, ahol az „employee_name” oszlop egyenlő a „Karen Martinez”-vel.

A kapott kimenet a következő:

munkavállalói_azonosító|munkavállaló_neve |osztályazonosító|
-----------+---------------+-------------+
8|Karen Martinez| 108 |

2. példa: Kis- és nagybetűk közötti karakterláncok összehasonlítása

Bár ez függhet az adatbázisrendszertől, alapértelmezés szerint a karakterlánc-összehasonlítás a legtöbb adatbázisrendszerben nem tesz különbséget a kis- és nagybetűk között.

Ha kifejezetten arra szeretné kényszeríteni az adatbázist, hogy kis- és nagybetűk közötti összehasonlítást hajtson végre, használja a BINARY kulcsszót az alábbiak szerint:

KIVÁLASZTÁS *
alkalmazottaktól
WHERE BINARY munkavállaló_neve = 'Karen martinez';

Ebben az esetben, mivel a megadott karakterlánc tartalmazza a kis M betűt a Martinez névben, az adatbázis egy másik karakterláncként kezeli. Ezért nincs eredmény.

3. példa: Helyettesítő karakterek használata

Más esetekben előfordulhat, hogy egy karakterlánc-egyenlőség-ellenőrzést szeretnénk végrehajtani a helyettesítő karakterek használatával. Ez megfelel a karakterláncoknak, amelyek egy adott formátumnak felelnek meg, nem pedig egyetlen karakterlánc-literálnak.

Ez segíthet rugalmasságot biztosítani a keresésekben anélkül, hogy ténylegesen túlterhelné az adatbázis-motort.

Például használhatjuk az olyan helyettesítő karaktereket, mint a „%” (bármilyen karaktersorozatnak felel meg) és a „_” (egyetlen karakternek felel meg) az egyenlő karakterlánccal együtt.

Nézzünk egy példát a következőképpen:

KIVÁLASZTÁS *
alkalmazottaktól e
WHERE alkalmazott_neve LIKE 'A%';

Ez a lekérdezés lekéri az összes alkalmazottat, akinek a neve „A” betűvel kezdődik.

4. példa: Menekülés a különleges karakterek elől

Abban az esetben, ha bizonyos karaktereket kell keresni a karakterlánc részeként, akkor ki kell őket hagyni, ha az egyenlő karakterláncban használja őket.

Ha például egy karakterre, például fordított perjelre vagy egyetlen idézőjelre szeretne keresni a karakterlánc részeként, akkor a következőképpen kell kihagynia:

KIVÁLASZTÁS *
A termékekből
WHERE product_name = 'Édes alma';

Ebben az esetben fordított perjelet használunk, hogy elkerüljük a karakterláncon belüli egyetlen idézetet.

A fordított perjel elkerüléséhez a következőképpen használhatja a kettős fordított perjeleket:

KIVÁLASZTÁS *
A termékekből
WHERE termék_neve = 'Édes\\ alma';

Ennek tartalmaznia kell egy fordított perjelet a karakterlánc literáljában.

Következtetés

Ebben az oktatóanyagban megismerkedtünk az egyik leggyakoribb és leghasznosabb karakterlánc-művelettel az adatbázisokban, ez a karakterlánc-egyenlőség összehasonlítása. Megtanultuk a különböző operátorok szintaxisát és használatát a karakterláncok összehasonlításához.