Adatbázis.Útmutató

SQL Server környezetben a rendelkezésünkre álló számos karakterláncfunkció közül kettő a LEFT()és SUBSTRING().

ezek a funkciók hasonló dolgot tesznek, de vannak különbségek. Ez a cikk a funkciók közötti főbb különbségeket vizsgálja.

Defintion

először nézzük meg, mit csinál minden funkció:

LEFT() visszaadja a Karakterlánc bal részét a megadott számú karakterrel., SUBSTRING() visszaadja egy karakter, bináris, szöveg vagy kép kifejezés egy részét.

So LEFT() csak a Karakterlánc bal oldalát adja vissza.

SUBSTRING() egyszerűen visszaadja a kifejezés egy részét (ez nem korlátozódik csak a bal részre – balra, jobbra vagy valahol középen lehet).

1. példa-ugyanaz az eredmény

mindkét funkció használható egy bizonyos számú karakter visszaadására balról.

SELECT LEFT("Buckethead", 6) AS , SUBSTRING("Buckethead", 1, 6) AS ;

eredmény:

+--------+-------------+| LEFT | SUBSTRING ||--------+-------------|| Bucket | Bucket |+--------+-------------+

azonban LEFT() tömörebb., Ez részben annak köszönhető, hogy kevesebb karakter van a függvénynévben.

de ez is azért, mert a szintaxis. A LEFT() funkció csak a szükséges két érvet (a véleménynyilvánítás, valamint a karakterek száma, a visszatérés), míg a SUBSTRING() igényel három érvek (a kifejezés, a kiinduló helyzetbe, majd a karakterek száma, vissza a kiindulási helyzet).,

2. példa-ha a SUBSTRING jobb

SUBSTRING() sokkal jobb, mint a LEFT() az adatok megragadása a karakterlánc közepétől. Valójában a bal oldalt nem erre tervezték. Ha igazán akarta használni a LEFT() ehhez meg kell tennie néhány trükköt, például használjon egy RIGHT() függvényt az első érvként.,

példa:

SELECT LEFT(RIGHT("Buckethead", 7), 3) AS , SUBSTRING("Buckethead", 4, 3) AS ;

eredmény:

+--------------+-------------+| LEFT/RIGHT | SUBSTRING ||--------------+-------------|| ket | ket |+--------------+-------------+

elfogadott adattípusok

aLEFT() függvény nem fogadja el a szöveget és az ntext adattípusokat első érvként. Támogatja az összes többi adattípust, amelyet varchar vagy nvarchar formátumba lehet konvertálni.

a SUBSTRING() függvény viszont elfogadja karakter, bináris, szöveg, ntext, kép kifejezések.,

visszatérési értékek

LEFT() visszaadja a varchart, ha az első argumentum nem Unicode karakter adattípus, és Nvarchar, ha Unicode karakter adattípus.,

The return values for SUBSTRING() are as follows:

Expression (first argument) Return type
char/varchar/text varchar
nchar/nvarchar/ntext nvarchar
binary/varbinary/image varbinary

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük