SDK數(shù)據(jù)庫 Command·聚合操作符·比較操作符

2022-05-12 17:01 更新

AggregateCommand.cmp(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。給定兩個(gè)值,返回其比較值:

參數(shù)

value: Expression[]

[<expression1>, <expression2>]

返回值

Object

API 說明

如果第一個(gè)值小于第二個(gè)值,返回 -1 如果第一個(gè)值大于第二個(gè)值,返回 1 如果兩個(gè)值相等,返回 0

語法如下:

db.command.aggregate.cmp([<expression1>, <expression2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "shop1": 10, "shop2": 100 }
{ "_id": 2, "shop1": 80, "shop2": 20 }
{ "_id": 3, "shop1": 50, "shop2": 50 }

求 shop1 和 shop2 的各個(gè)物品的價(jià)格對比。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    compare: $.cmp(['$shop1', '$shop2']))
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "compare": -1 }
{ "_id": 2, "compare": 1 }
{ "_id": 3, "compare": 0 }

AggregateCommand.eq(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果相等則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.eq([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

求 value 等于 50 的記錄。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.eq(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": false }
{ "_id": 2, "matched": false }
{ "_id": 3, "matched": true }

AggregateCommand.gt(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果前者大于后者則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.gt([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

判斷 value 是否大于 50。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.gt(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": false }
{ "_id": 2, "matched": true }
{ "_id": 3, "matched": false }

AggregateCommand.gte(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果前者大于或等于后者則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.gte([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

判斷 value 是否大于或等于 50。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.gte(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": false }
{ "_id": 2, "matched": true }
{ "_id": 3, "matched": true }

AggregateCommand.lt(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果前者小于后者則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.lt([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

判斷 value 是否小于 50。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.lt(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": true }
{ "_id": 2, "matched": false }
{ "_id": 3, "matched": false }

AggregateCommand.lte(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果前者小于或等于后者則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.lte([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

判斷 value 是否小于 50。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.lte(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": true }
{ "_id": 2, "matched": false }
{ "_id": 3, "matched": true }

AggregateCommand.neq(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果不相等則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.neq([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

求 value 不等于 50 的記錄。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.neq(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": true }
{ "_id": 2, "matched": true }
{ "_id": 3, "matched": false }


支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。給定兩個(gè)值,返回其比較值:

參數(shù)

value: Expression[]

[<expression1>, <expression2>]

返回值

Object

API 說明

如果第一個(gè)值小于第二個(gè)值,返回 -1 如果第一個(gè)值大于第二個(gè)值,返回 1 如果兩個(gè)值相等,返回 0

語法如下:

db.command.aggregate.cmp([<expression1>, <expression2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "shop1": 10, "shop2": 100 }
{ "_id": 2, "shop1": 80, "shop2": 20 }
{ "_id": 3, "shop1": 50, "shop2": 50 }

求 shop1 和 shop2 的各個(gè)物品的價(jià)格對比。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    compare: $.cmp(['$shop1', '$shop2']))
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "compare": -1 }
{ "_id": 2, "compare": 1 }
{ "_id": 3, "compare": 0 }

AggregateCommand.eq(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果相等則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.eq([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

求 value 等于 50 的記錄。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.eq(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": false }
{ "_id": 2, "matched": false }
{ "_id": 3, "matched": true }

AggregateCommand.gt(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果前者大于后者則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.gt([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

判斷 value 是否大于 50。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.gt(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": false }
{ "_id": 2, "matched": true }
{ "_id": 3, "matched": false }

AggregateCommand.gte(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果前者大于或等于后者則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.gte([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

判斷 value 是否大于或等于 50。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.gte(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": false }
{ "_id": 2, "matched": true }
{ "_id": 3, "matched": true }

AggregateCommand.lt(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果前者小于后者則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.lt([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

判斷 value 是否小于 50。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.lt(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": true }
{ "_id": 2, "matched": false }
{ "_id": 3, "matched": false }

AggregateCommand.lte(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果前者小于或等于后者則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.lte([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

判斷 value 是否小于 50。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.lte(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": true }
{ "_id": 2, "matched": false }
{ "_id": 3, "matched": true }

AggregateCommand.neq(value: Expression[]): Object

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

聚合操作符。匹配兩個(gè)值,如果不相等則返回 true,否則返回 false。

參數(shù)

value: Expression[]

[<value1>, <value2>]

返回值

Object

API 說明

語法如下:

db.command.aggregate.neq([<value1>, <value2>])

示例代碼

假設(shè)集合 price 有如下記錄:

{ "_id": 1, "value": 10 }
{ "_id": 2, "value": 80 }
{ "_id": 3, "value": 50 }

求 value 不等于 50 的記錄。

const $ = db.command.aggregate
db.collection('price').aggregate()
  .project({
    matched: $.neq(['$value', 50])
  })
  .end()

返回結(jié)果如下:

{ "_id": 1, "matched": true }
{ "_id": 2, "matched": true }
{ "_id": 3, "matched": false }


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)