診断ルールの正規表現は変更できます。sql_diagnoserの診断ルールの正規表現構文は以下のとおりです。
データ型
データ型 |
説明 |
|---|---|
| 数値型 | 例:1、1.1、-2.3。 |
| 文字列 | 例:'a'、"abc"。 |
| ブール値 | 例:true、false。大文字小文字は区別されません。 |
| コンテキスト変数 | クラスプロパティで、コンテキストからオブジェクトプロパティを取得するために使用されます。プロパティの前に $ を付ける必要があります。応答時間を取得する例:$elapsedTime。 大文字小文字は区別されます。 |
オブジェクト演算
タイプ |
説明 |
|---|---|
| プロパティアクセス | オブジェクトのプロパティにアクセスします。例えば、$a.b はコンテキスト内のオブジェクト a の b プロパティにアクセスすることを表します。 |
| メソッドアクセス | オブジェクトのメソッドにアクセスします。プロパティアクセスと組み合わせて使用できます。例:$a.f1() は、コンテキスト内のオブジェクト a の f1 メソッドにアクセスすることを表します。現在は使用されていませんが、用法のみを示しています。 |
集計演算
バリエーション |
説明 |
|---|---|
| COUNT、AVG、STD、VAR、MIN、MAX、SUM、DISTINCT | SQLと一致し、集合に対して演算を行います。 |
| 集合プロジェクション | 集合内の各要素の属性を取り出し、新しい集合を構成します。SQLのプロジェクション列に似ています。例:$tableList.tableName。$tableListが集合の場合、各要素のtableName属性を取り出して集合を形成します。大文字小文字は区別されません。 |
関係演算
種類 |
説明 |
|---|---|
| !=/<> 、=/== 、<= 、< 、>=、 > | SQLと一致します。 |
| IN | SQLのINと同じで、要素が特定の集合に存在するかどうかを判断します。 大文字小文字は区別しません。 |
ブール演算
結合演算子 |
説明 |
|---|---|
| AND、OR、NOT | SQLと一致します。大文字小文字を区別しません。 |
その他の演算
バリエーション |
説明 |
|---|---|
| ISNULL、NOTNULL、NOTEMPTY、ISEMPTY | ISNULL、NOTNULLは、オブジェクトが存在するかどうかを判断します。NOTEMPTY、ISEMPTYは、コレクションが空かどうかを判断します。 大文字小文字を区別しません。 |