SybaseIQで一般的に使用される関数-その他の関数
Sybase Iq Commonly Used Functions Miscellaneous Functions
SybaseIQ共通関数Daquan–その他の関数
クエリインデックス:
- COALESCE関数:リスト内の最初のNULL以外の式を返します。
- IFNULL関数:最初の非NULL値式またはNULLを返します。
- ISNULL関数:引数リストの最初のNULL以外の式の値を返します。この関数には、少なくとも2つの式を渡す必要があります。 ISNULL関数は、COALESCE関数と同じです。
- ISNUMERIC関数:文字列引数を数値に変換できるかどうかをテストします。この関数は、変換が可能な場合は1を返し、そうでない場合は0を返します。引数がNULLの場合は0を返します。
- NEWID関数:UUID(Universally Unique Identifier)値を生成します。返されるUUID値はバイナリ値です。 UUIDは、GUID(グローバル一意識別子)と同じです。詳細は省略しています。
- NUMBER関数:クエリ結果の連続する行ごとに1から始まる数値を生成します。
- ROWID関数:テーブルの各行の内部行ID値を返します。
1.COALESCE機能
リスト内の最初のNULL以外の式を返します。
文法:
COALESCE ( <expression>, <expression> [ , … ] )
分析:
パラメータ | 説明 |
---|---|
式 | 任意の表現 |
例:
-- The following statement returns the value 34: SELECT COALESCE( NULL, 34, 13, 0 ) FROM iq_dummy
2.IFNULL関数
最初の非NULL値式またはNULLを返します。最初の式がNULL値の場合、2番目の式の値が返されます。最初の式がNULLでない場合、3番目の式の値を返します。最初の式がNULLでなく、3番目の式がない場合、NULL値が返されます。
文法:
IFNULL ( <expression1>, <expression2> [ , <expression3> ] )
分析:
パラメータ | 説明 |
---|---|
式1 | 評価する式。その値は、戻るか。を返すかを決定します。 |
式2 | NULLの場合の戻り値。 |
式3 | NULLでない場合の戻り値。 |
例:
-- The following statement returns the value -66: SELECT IFNULL( NULL, -66 ) FROM iq_dummy -- The following statement will return NULL because the first expression is not NULL and there is no third expression: SELECT IFNULL( -66, -66 ) FROM iq_dummy
3.ISNULL関数
引数リストの最初のNULL以外の式の値を返します。この関数には、少なくとも2つの式を渡す必要があります。
文法:
ISNULL ( <expression>, <expression> [ …, <expression> ] )
分析:
パラメータ | 説明 |
---|---|
式 | 式がNULLかどうかをテストします。 |
- ISNULL関数は、COALESCE関数と同じです。
例:
The following statement returns the value -66: SELECT ISNULL( NULL ,-66, 55, 45, NULL, 16 ) FROM Iq_dummy related information 287 On the pageCOALESCE Function [Miscellaneous]”6.11.90 ISNUMERIC function [Miscellaneous]Tests if string arguments can be converted to numbers. If the conversion is possible, this function returns 1 otherwise return 0. If the parameter is NULLReturn 0. Syntax ISNUMERIC ( <string> )Parameter parameter
4.ISNUMERIC関数
文字列引数を数値に変換できるかどうかをテストします。この関数は、変換が可能な場合は1を返し、そうでない場合は0を返します。引数がNULLの場合は0を返します。
文法:
ISNUMERIC ( <string> )
分析:
パラメータ | 説明 |
---|---|
ストリング | 解析する文字列(分析の目的は、文字列が有効な値を表しているかどうかを判断することです)。 |
例:
-- The following example tests whether valid numeric data is stored in the height_in_cms column, which returns invalid numeric data as NULL and returns valid numeric data in int format. select case when isnumeric(height_in_cms)=0 then NULL else cast(height_in_cms as int) end from MyData
5.少し
6.NUMBER関数
クエリ結果の連続する行ごとに、1から始まる数値を生成します。
文法:
NUMBER ( * )
分析:
- UPDATE関数は、選択リストまたはNUMBERステートメントのSET句でのみ使用してください。たとえば、次のステートメントは、seq_id列の各行を、前の行より1つ大きい数で更新します。番号が適用される順序は、ORDERBY句で指定されます。
- UPDATEステートメントで、NUMBER( この関数はSET句で使用され、FROM句は1対多の接続を指定し、次にNUMBER( )は一意の番号を生成します。これらの番号は増加しますが、行が削除されているため、順番に増加しない場合があります。
例:
SELECT NUMBER( * ) FROM Departments WHERE DepartmentID > 10
7.ROWID関数
テーブルの各行の内部行ID値を返します。
文法:
ROWID ( <table-name> ) …FROM <table-name>
分析:
パラメータ | 説明 |
---|---|
テーブル名 | テーブルの名前。括弧内に引用符または二重引用符を付けずにテーブル名を指定します。 |
- ROWID関数を他の句と組み合わせて使用して、テーブルの特定の行を操作できます。
- FROM句を指定する必要があります。
例:
-- The following statement returns row ID values 1 through 10: SELECT ROWID( “PRODUCTS” ) FROM PRODUCTS
-- The following statement returns the product ID and row ID values for all rows with a product ID value less than 400: SELECT PRODUCTS.ID, ROWID ( PRODUCTS ) FROM PRODUCTS WHERE PRODUCTS.ID < 400
結果:
ID | rowid(製品) |
---|---|
300 | 1 |
301 | 二 |
302 | 3 |