Class: Clause

Clause

オブジェクト検索条件 クラス


new Clause()

Clause インスタンスを生成する

Example
var clause = new Nebula.Clause();

Methods


<static> all(key, values)

key の値が values で指定されたすべてを含んでいるかの条件を示す Nebula.Clause インスタンスを生成する

Parameters:
Name Type Description
key String

比較するキー名

values Object

比較する値の配列

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var targets = ["ssl", "security"];
     var clause = Nebula.Clause.all("tags", targets);

<static> and(clauses)

複数の条件を AND条件で結合する

Parameters:
Name Type Description
clauses Clause

AND条件をとるNebula.Clauseインスタンス
複数のインスタンスを指定できる

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var clause1 = Nebula.Clause.equals("name", "AAA");
     var clause2 = Nebula.Clause.lessThan("score", 50);
     var clause3 = Nebula.Clause.greaterThan("score", 30);
     var clause = Nebula.Clause.and(clause1, clause2, clause3);

<static> equals(key, value)

(key == value) の条件を示す Nebula.Clause インスタンスを生成する

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var clause = Nebula.Clause.equals("score", 80);

<static> exist(key, value)

key で示したフィールドが存在するかどうかを示す Nebula.Clause インスタンスを生成する

Parameters:
Name Type Description
key String

比較するキー名

value Boolean

存在を確認する場合は true、 存在しないことを確認する場合は false を指定する。

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var clause = Nebula.Clause.exist("tags", targets);

<static> greaterThan(key, value)

(key > value) の条件を示す Nebula.Clause インスタンスを生成する

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var clause = Nebula.Clause.greaterThan("number", 1000);

<static> greaterThanOrEqual(key, value)

(key >= value) の条件を示す Nebula.Clause インスタンスを生成する

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var clause = Nebula.Clause.greaterThanOrEqual("number", 1000);

<static> in(key, values)

key の値が values で指定された中に存在するかの条件を示す Nebula.Clause インスタンスを生成する

Parameters:
Name Type Description
key String

比較するキー名

values Object

比較する値の配列

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var targets = [1000, 1003, 1005];
     var clause = Nebula.Clause.in("number", targets);

<static> lessThan(key, value)

(key < value) の条件を示す Nebula.Clause インスタンスを生成する

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var clause = Nebula.Clause.lessThan("score", 30);

<static> lessThanOrEqual(key, value)

(key <= value) の条件を示す Nebula.Clause インスタンスを生成する

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var clause = Nebula.Clause.lessThanOrEqual("score", 30);

<static> notEquals(key, value)

(key != value) の条件を示す Nebula.Clause インスタンスを生成する

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var clause = Nebula.Clause.notEquals("name", "apple");

<static> or(clauses)

複数の条件を OR条件で結合する

Parameters:
Name Type Description
clauses Clause

OR条件をとるNebula.Clauseインスタンス
複数のインスタンスを指定できる

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var clause1 = Nebula.Clause.equals("name", "AAA");
     var clause2 = Nebula.Clause.lessThan("score", 50);
     var clause3 = Nebula.Clause.greaterThan("score", 30);
     var clause = Nebula.Clause.or(clause1, clause2, clause3);

<static> regex(key, expression, option)

正規表現による検索条件を示す Nebula.Clause インスタンスを生成する

Parameters:
Name Type Description
key String

比較するキー名

expression String

Perl互換の正規表現の条件文字列

option Object

オプション
option には必要に応じて以下の値を指定してもよい。(省略可能)

Nebula.RegexOption.CASE_INSENSITIVITY   大文字小文字を区別しない

Returns:

Nebula.Clause インスタンスを返す。

Type
Clause
Example
var clause = Nebula.Clause.regex("name", "abc*");

all(key, values)

key の値が values で指定されたすべてを含んでいるかの条件を追加する

Parameters:
Name Type Description
key String

比較するキー名

values Object

比較する値の配列

Returns:

this

Type
Clause
Example
var targets = ["ssl", "security"];
     var clause = new Nebula.Clause().all("tags", targets);

equals(key, value)

(key == value) の条件を追加する

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

this

Type
Clause
Example
var clause = new Nebula.Clause().equals("score", 80);

exist(key, value)

key で示したフィールドが存在するかどうかの条件を追加する

Parameters:
Name Type Description
key String

比較するキー名

value Boolean

存在を確認する場合は true、 存在しないことを確認する場合は false を指定する。

Returns:

this

Type
Clause
Example
var clause = new Nebula.Clause().exist("tags", targets);

greaterThan(key, value)

(key > value) の条件を追加する

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

this

Type
Clause
Example
var clause = new Nebula.Clause().greaterThan("number", 1000);

greaterThanOrEqual(key, value)

(key >= value) の条件を追加すうr

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

this

Type
Clause
Example
var clause = Nebula.Clause.greaterThanOrEqual("number", 1000);

in(key, values)

key の値が values で指定された中に存在するかの条件を追加する

Parameters:
Name Type Description
key String

比較するキー名

values Object

比較する値の配列

Returns:

this

Type
Clause
Example
var targets = [1000, 1003, 1005];
     var clause = new Nebula.Clause().in("number", targets);

json()

JSONで表現された条件式を取得する

Returns:

JSON条件式

Type
Object

lessThan(key, value)

(key < value) の条件を追加する

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

this

Type
Clause
Example
var clause = new Nebula.Clause().lessThan("score", 30);

lessThanOrEqual(key, value)

(key <= value) の条件を追加する

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

this

Type
Clause
Example
var clause = new Nebula.Clause().lessThanOrEqual("score", 30);

not(key)

Nebula.Clause インスタンスの key の条件を反転させる

Parameters:
Name Type Description
key String

比較するキー名

Returns:

Nebula.Clause インスタンス(this)を返す。

Type
Clause
Example
var clause = Nebula.Clause.exist("tags", targets);
     clause.not("tags");

notEquals(key, value)

(key != value) の条件を追加する

Parameters:
Name Type Description
key String

比較するキー名

value Object

比較する値

Returns:

this

Type
Clause
Example
var clause = new Nebula.Clause().notEquals("name", "apple");

regex(key, expression, option)

正規表現による検索条件を追加する

Parameters:
Name Type Description
key String

比較するキー名

expression String

Perl互換の正規表現の条件文字列

option Object

オプション
option には必要に応じて以下の値を指定してもよい。(省略可能)

Nebula.RegexOption.CASE_INSENSITIVITY   大文字小文字を区別しない

Returns:

this

Type
Clause
Example
var clause = new Nebula.Clause().regex("name", "abc*");