Megosztás a következőn keresztül:


Sztringfüggvények

Az alábbi táblázat a sztring-kezelési függvényeket sorolja fel. Az alkalmazások az illesztő által támogatott sztringfüggvényeket úgy határozhatják meg, hogy meghívják SQLGetInfo SQL_STRING_FUNCTIONS.

Megjegyzések

Az string_exp jelölésű argumentumok lehetnek egy oszlop neve, egy karakter-sztringkonstansvagy egy másik skaláris függvény eredménye, ahol a mögöttes adattípus SQL_CHAR, SQL_VARCHAR vagy SQL_LONGVARCHAR lehet ábrázolni.

A character_exp argumentumok változó hosszúságú karaktersorozatok.

A kezdő, hosszvagy darabszámnumerikus-konstans vagy egy másik skaláris függvény eredménye lehet, ahol a mögöttes adattípus SQL_TINYINT, SQL_SMALLINT vagy SQL_INTEGER jelölhető.

Az itt felsorolt sztringfüggvények 1-alapúak; vagyis a sztring első karaktere az 1. karakter.

A BIT_LENGTH, CHAR_LENGTH, CHARACTER_LENGTH, OCTET_LENGTH és POSITION sztring skaláris függvénye az ODBC 3.0-ban lett hozzáadva az SQL-92-hez való igazodás érdekében.

Funkció Leírás
ASCII(string_exp) (ODBC 1.0) A string_exp bal szélső karakterének ASCII-kódértékét adja vissza egész számként.
BIT_LENGTH(string_exp) (ODBC 3.0) A sztringkifejezés bitben megadott hosszát adja vissza.

Nem csak sztring adattípusok esetén működik, ezért nem konvertálja implicit módon a string_exp sztringgé, hanem visszaadja a megadott adattípus (belső) méretét.
CHAR(kód) (ODBC 1.0) A kódáltal megadott ASCII-kódértéket tartalmazó karaktert adja vissza. A kód értéke 0 és 255 között lehet; ellenkező esetben a visszatérési érték adatforrás-függő.
CHAR_LENGTH(string_exp) (ODBC 3.0) A sztringkifejezés karaktereinek hosszát adja vissza, ha a sztringkifejezés karakter adattípusú; ellenkező esetben a sztringkifejezés bájtban megadott hosszát adja vissza (a legkisebb egész nem kisebb, mint a bitek száma 8-tal osztva). (Ez a függvény megegyezik a CHARACTER_LENGTH függvénnyel.)
CHARACTER_LENGTH(string_exp) (ODBC 3.0) A sztringkifejezés karaktereinek hosszát adja vissza, ha a sztringkifejezés karakter adattípusú; ellenkező esetben a sztringkifejezés bájtban megadott hosszát adja vissza (a legkisebb egész nem kisebb, mint a bitek száma 8-tal osztva). (Ez a függvény megegyezik a CHAR_LENGTH függvénnyel.)
CONCAT(string_exp1,string_exp2) (ODBC 1.0) Olyan karaktersztringet ad vissza, amely a string_exp2string_exp1összefűzésének eredménye. Az eredményül kapott sztring DBMS-függő. Ha például a string_exp1 által képviselt oszlop NULL értéket tartalmaz, akkor a DB2 NULL értéket ad vissza, az SQL Server viszont a nem NULL sztringet.
DIFFERENCE(string_exp1,string_exp2) (ODBC 2.0) Egy egész számot ad vissza, amely a STRING_EXP1 és string_exp2SOUNDEX függvény által visszaadott értékek közötti különbséget jelzi.
INSERT(string_exp1, start, hossz, string_exp2) (ODBC 1.0) Olyan karaktersztringet ad vissza, amelyben hossz karakterek törölve lettek string_exp1kezdő, és ahol string_exp2 be lett szúrva string_exp,kezdési.
LCASE(string_exp) (ODBC 1.0) A string_expértékével megegyező sztringet ad vissza, amelyben az összes nagybetű kisbetűssé alakul.
LEFT(string_exp, count) (ODBC 1.0) Az string_expbal szélső karaktereinek számát adja vissza.
HOSSZ(string_exp) (ODBC 1.0) A string_exp karakterek számát adja vissza, a záró üres karakterek kivételével.

HOSSZ csak sztringeket fogad el. Ezért implicit módon átalakítja a string_exp sztringgé, és visszaadja ennek a sztringnek a hosszát (nem az adattípus belső méretét).
LOCATE(string_exp1, string_exp2[, start]) (ODBC 1.0) A string_exp1 első előfordulásának kezdő pozícióját adja vissza a string_exp2. A string_exp1 első előfordulásának keresése a string_exp2 első karakterpozíciójával kezdődik, hacsak nincs megadva az opcionális argumentum, . Ha indítási van megadva, a keresés a kezdőértéke által jelzett karakterpozícióval kezdődik. A string_exp2 első karakter pozícióját az 1 érték jelöli. Ha string_exp1 nem található a string_exp2belül, a rendszer a 0 értéket adja vissza.

Ha egy alkalmazás meghívhatja a LOCATE skaláris függvényt a string_exp1, string_exp2és argumentumok indításához, az illesztő SQL_FN_STR_LOCATE ad vissza, amikor SQLGetInfoOption SQL_STRING_FUNCTIONS használatával hívja meg. Ha az alkalmazás csak a string_exp1 és string_exp2 argumentumokkal tudja meghívni a LOCATE skaláris függvényt, az illesztő SQL_FN_STR_LOCATE_2 ad vissza, amikor SQLGetInfoOption SQL_STRING_FUNCTIONS használatával hívja meg. Azok az illesztőprogramok, amelyek támogatják a HELY függvény meghívását két vagy három argumentummal, SQL_FN_STR_LOCATE és SQL_FN_STR_LOCATE_2 is visszaadnak.
LTRIM(string_exp) (ODBC 1.0) A string_expkaraktereit adja vissza, és a kezdő üres elemek el lettek távolítva.
OCTET_LENGTH(string_exp) (ODBC 3.0) A sztringkifejezés bájtban megadott hosszát adja vissza. Az eredmény a legkisebb egész szám, amely nem kisebb, mint a bitek száma 8-tal osztva.

Nem csak sztring adattípusok esetén működik, ezért nem konvertálja implicit módon a string_exp sztringgé, hanem visszaadja a megadott adattípus (belső) méretét.
POSITION(character_expINcharacter_exp) (ODBC 3.0) Az első karakterkifejezés pozícióját adja vissza a második karakterkifejezésben. Az eredmény egy pontos numerikus, implementáció által definiált pontossággal és 0 skálával.
REPEAT(string_exp,count) (ODBC 1.0) Olyan karaktersztringet ad vissza, amely string_exp ismétlődő száma alkalommal.
REPLACE(string_exp1, string_exp2, string_exp3) (ODBC 1.0) Keresse meg string_exp1 a string_exp2előfordulásait, és cserélje le a string_exp3.
RIGHT(string_exp, count) (ODBC 1.0) A string_expjobb szélső darabszámát karaktert adja vissza.
RTRIM(string_exp) (ODBC 1.0) A string_exp karaktereit adja vissza, és a záró üres elemek el lettek távolítva.
SOUNDEX(string_exp) (ODBC 2.0) Egy adatforrástól függő karaktersztringet ad vissza, amely az string_expszavak hangját jelöli. Az SQL Server például egy 4 jegyű SOUNDEX-kódot ad vissza; Az Oracle az egyes szavak fonetikus ábrázolását adja vissza.
SZÓKÖZ(darabszám) (ODBC 2.0) Egy számból szóközökből álló karaktersztringet ad vissza.
SUBSTRING(string_exp, start, length**)** (ODBC 1.0) Olyan karaktersztringet ad vissza, amely a string_exp, a által megadott karakterpozíciótól kezdvehossz karaktereknél kezdődik.
UCASE(string_exp) (ODBC 1.0) A string_expértékével megegyező sztringet ad vissza, amelyben az összes kisbetű nagybetűvé alakul.