SQL 文字列関数: 最も役立つ 10 個
コア アプリではなくデータベース サーバーでテキスト文字列を操作する方法を学びます。
SQL (構造化照会言語) には多くの組み込み関数があります。 広く使用されている関数の中には、文字列関数もあります。
文字列は、文字ベースの情報を格納するために使用されるデータ型です。 SQL 文字列関数は事前定義された関数です。 これらを使用して文字列値を操作し、さまざまなデータベース操作を実行できます。
文字列関数は、文字列または数値の結果を処理して返します。 SQL を使用する場合は、次の標準文字列関数を使用します。
CONCAT() は、SQL サーバーで広く使用されている関数です。 これを使用して、2 つ以上の文字列を 1 つの文字列に結合します。 この関数は文字列を入力として受け取り、それらを単一の文字列値に連結します。 文字列と区切り文字を引数として受け取ります。
構文は次のとおりです。
次の例を参照してください。
これにより、「MakeUseOfwebsite」という値が返されます。
SELECT ステートメントは、最も一般的に使用される SQL コマンドの 1 つです。 これを使用して、データベース テーブルのレコードにアクセスします。
関数で指定した条件に従って、選択したデータを取得できます。 ORDER BY、WHERE、GROUP BY などの他のステートメントを使用してデータベースを操作することもできます。
CONCAT() 関数の別の形式は CONCAT_WS() です。 この関数は文字列を入力として受け取り、それらを 1 つの文字列に連結します。 ただし、間に区切り文字を入れます。 通常、区切り文字は最初の引数になります。
例えば:
戻り値は「MakeUseOf, website」となります。
SUBSTRING() 関数は、指定された位置から始まる文字列の一部を返します。 文字列、開始、長さの 3 つの引数を取ります。 長さはオプションです。
構文:
開始位置はインデックス 1 から始まります (一部のプログラミング言語のようにインデックス 0 ではありません)。 長さ (len) は、抽出する文字数を示します。 長さは常に正の数でなければなりません。
例えば:
値「cd」を返します。
SQL LENGTH() 関数は文字列の長さを返します。 文字列を引数として受け取ります。 構文は次のとおりです。
たとえば、「Jones」という名前の長さを調べるには、次のように関数を作成します。
戻り値は5です。
この関数は、文字列内のすべての文字を大文字に変更します。 一部のデータベースでは UCASE() とも呼ばれます。 構文は次のとおりです。
たとえば、「SQL チュートリアルが大好きです」という文を変換します。 大文字にします。
戻り値は「SQL チュートリアルが大好きです!」です。
SQL には LOWER() 関数もあります。 この関数は、UPPER() 関数とは逆に、文字列を小文字に変換します。
TRIM() 関数は、文字列の周囲のスペースを削除します。 文字列を引数として受け取ります。 構文は次のとおりです。
例えば:
戻り値は「abcd」となります。
次の構文で TRIM() を使用して文字列から他の文字を削除することもできます。
関数には、関数が動作する場所を指定する引数が含まれています。 たとえば、BOTH は文字列のプレフィックスとサフィックスの両方を指します。 LEADING は接頭辞を指し、TRAILING は接尾辞をそれぞれ指します。 削除された文字列の部分も含まれます [remstr]。
例えば:
「bcdaaa」を返します。
RTRIM() 関数を使用して文字列の右側から文字を削除したり、LTRIM() 関数を使用して左側から文字を削除したりすることもできます。
REPLACE() 関数は、文字列内の部分文字列を新しい部分文字列に置き換えます。 構文:
original_string は、置換を実行する入力文字列です。 substring_to_replace は、original_string 内で置換する部分文字列です。 new_substring は、original_string に配置する文字列です。
例えば:
結果は「MICROSOFT」になります。
INSTR() 関数を使用して、文字列内の部分文字列の開始位置を見つけます。 これは、Oracle サーバーの CHARINDEX() 関数と同様に機能します。 または、PostgreSQL データベースで使用される一般的な POSITION() 関数。