在微信小程序云开发中,通过云数据库的 collection.where 方法可以添加筛选条件来查询符合特定条件的记录。以下是一些常见的查询筛选条件示例:

1. 等于条件:
const result = await collection.where({
  field1: 'value1',
  field2: 123
}).get()

2. 不等于条件:
const result = await collection.where({
  field1: db.command.neq('value1'),
  field2: db.command.neq(123)
}).get()

3. 大于、小于条件:
const result = await collection.where({
  field1: db.command.gt(50),  // 大于50
  field2: db.command.lt(100)  // 小于100
}).get()

4. 大于等于、小于等于条件:
const result = await collection.where({
  field1: db.command.gte(50),  // 大于等于50
  field2: db.command.lte(100)  // 小于等于100
}).get()

5. 包含于、不包含于条件:
const result = await collection.where({
  field1: db.command.in(['value1', 'value2']),
  field2: db.command.nin([123, 456])
}).get()

6. 正则表达式条件:
const result = await collection.where({
  field1: db.RegExp({
    regexp: 'pattern',
    options: 'i'  // 忽略大小写
  })
}).get()

7. 地理位置附近查询:
const point = new db.Geo.Point(113, 23);  // 经度、纬度
const result = await collection.where({
  location: db.Geo.near({
    geometry: point,
    maxDistance: 1000  // 查询半径,单位为米
  })
}).get()

这只是一些常见的查询筛选条件的示例,你可以根据实际需求组合这些条件来构建复杂的查询。在使用这些条件时,请确保已经在云开发控制台中创建了相应的索引,以保证查询的性能。


转载请注明出处:http://www.zyzy.cn/article/detail/1207/微信小程序