005 WeChat Mini Program Cloud Development API Base de datos-Consulta de registros-Agregación-Número estadístico de registros

Insertar descripción de la imagen aquí

1. Registros de consulta de base de datos de API de desarrollo en la nube del mini programa WeChat

La base de datos API de desarrollo en la nube del Mini Programa WeChat es una solución de base de datos rápida y conveniente que permite a los desarrolladores usar directamente funciones de bases de datos en la nube en Mini Programas sin tener que crear y administrar servidores ellos mismos. En la base de datos de la API de desarrollo en la nube del Mini Programa WeChat, podemos consultar registros específicos para obtener datos e información relevantes. Este artículo presentará en detalle el método de consulta y registro de la base de datos API de desarrollo de la nube del subprograma WeChat a través de casos y código.

  • Entorno de desarrollo de nube abierta

    Antes de utilizar el desarrollo en la nube, debe abrir un entorno de desarrollo en la nube. Inicie sesión en la plataforma pública WeChat, ingrese a la página "Desarrollo" -> "Desarrollo en la nube" y siga las instrucciones para completar la activación.

  • Crear un entorno de desarrollo en la nube

    cloudfunctionsDespués de activar el entorno de desarrollo en la nube, debe crear una carpeta con el nombre en el directorio raíz del mini programa para almacenar las funciones de la nube. Cree una carpeta con el nombre debajo de cloudfunctionsla carpeta queryRecordspara almacenar funciones en la nube que consultan registros.

  • Inicializar el entorno de desarrollo en la nube

    Cree un archivo con el nombre en queryRecordsla carpeta initCloudBase.jspara inicializar el entorno de desarrollo en la nube. El contenido del archivo es el siguiente:

// 初始化云开发环境
wx.cloud.init({
    
    
  env: 'your-cloud-env-id' // 替换为你的云开发环境的 ID
})    
  • Crear una función en la nube

    Cree un archivo con el nombre en queryRecordsla carpeta queryRecords.jspara escribir funciones en la nube. El contenido del archivo es el siguiente:

// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()

// 查询记录的云函数
exports.main = async (event, context) => {
    
    
  const db = cloud.database()
  try {
    
    
    const result = await db.collection('todos').get() // 根据传入的条件查询记录(可选)
    if (result.data.length === 0) {
    
     // 如果查询结果为空,返回提示信息(可选)
      return 'No records found.'
    } else {
    
     // 如果查询结果不为空,返回查询结果(必选)
      return result.data[0] // 仅返回第一条记录(根据实际需求修改)
    }
  } catch (e) {
    
     // 打印错误信息并抛出异常(必选)
    console.error(e)
    throw e
  } finally {
    
     // 关闭云开发环境,释放资源(可选)
    cloud.database().collection('todos').doc('recordId').get().then(res => {
    
     // 根据查询条件查找并获取记录(可选)
      if (res.data && res.data.title) {
    
     // 如果找到记录,返回记录数据(可选)
        return res.data // 仅返回第一条记录(根据实际需求修改)
      } else {
    
     // 如果未找到记录,返回 null(可选)
        return null
      }
    }).catch(err => {
    
     // 处理异常情况(可选)
      console.error('Error checking record status:', err) // 打印检查记录状态时出现的错误信息(可以根据实际需求修改提示信息)
    })
    cloud.close() // 关闭云开发环境,释放资源(可选)
  }
}

Código de caso

Supongamos que tenemos un subprograma de WeChat para administrar las listas de compras de los usuarios. Los usuarios pueden utilizar la función de búsqueda para encontrar registros específicos de la lista de compras. Para implementar esta función, necesitamos utilizar el método de consulta y registro de la base de datos API de desarrollo de la nube del subprograma WeChat.

Descripción del código

  1. En el subprograma WeChat, debemos introducir bibliotecas y componentes relevantes. Agregue el siguiente código en el archivo app.json:
{
    
      
  "usingComponents": {
    
      
    "cloud-native": "/path/to/cloud-native"  
  }  
}

Entre ellos, "/ruta/a/nativo de la nube" es la ruta del componente de desarrollo de la nube.

  1. En la página donde se deben consultar los registros, se introduce el componente de base de datos de desarrollo en la nube. Agregue el siguiente código al archivo .wxml correspondiente:
html复制代码

<cloud-native-database:bind id="bindData" dbname="{
     
     {dbname}}" collection="{
     
     {collection}}" key="{
     
     {key}}" />

Entre ellos, { {dbname}}, { {collection}} y { {key}} son los nombres de fuentes de datos, nombres de colecciones y nombres de claves correspondientes, que se pueden modificar según las necesidades reales.

  1. En la página donde se deben consultar los registros, escriba la lógica para consultar registros. Agregue el siguiente código al archivo .js correspondiente:
// 获取云开发数据库组件实例  
const bindData = wx.cloud.database().collection('bind')  
// 定义查询条件  
const query = {
    
     name: '商品1' }  
// 调用 get 方法查询记录  
bindData.get(query).then(res => {
    
      
  // 处理查询结果  
  console.log(res)  
})

En el código anterior, primero obtenemos la instancia de la base de datos de desarrollo en la nube a través del método wx.cloud.database (), luego especificamos el nombre de la colección a través del método collection () y especificamos el nombre de la clave a través del método doc (). A continuación, definimos una consulta de objeto de condición de consulta, que contiene las condiciones de consulta para los registros que se consultarán. Finalmente, utilizamos el método get() para consultar registros que cumplan las condiciones. El método get() devuelve un objeto Promise y podemos usar el método then() para procesar los resultados de la consulta. En este caso, enviamos los resultados de la consulta a la consola.

Nota: La consulta de registros puede arrojar múltiples resultados, que podemos procesar según sea necesario. Además, la consulta de registros puede consumir una cierta cantidad de tiempo y recursos, que deben sopesarse en función de la situación real.

2. Agregación de bases de datos de API de desarrollo en la nube del miniprograma WeChat

WeChat Mini Program Cloud Development API Database es una poderosa solución de base de datos que proporciona muchos métodos de operación de bases de datos convenientes y rápidos. Entre ellos, la operación de agregación es un método de procesamiento de datos comúnmente utilizado, que puede realizar estadísticas, análisis y cálculos sobre los datos en la base de datos. Este artículo presentará en detalle el método de operación de agregación de la base de datos API de desarrollo de la nube del subprograma WeChat a través de casos y código.

  • Entorno de desarrollo de nube abierta

    Antes de utilizar el desarrollo en la nube, debe abrir un entorno de desarrollo en la nube. Inicie sesión en la plataforma pública WeChat, ingrese a la página "Desarrollo" -> "Desarrollo en la nube" y siga las instrucciones para completar la activación.

  • Crear un entorno de desarrollo en la nube

    cloudfunctionsDespués de activar el entorno de desarrollo en la nube, debe crear una carpeta con el nombre en el directorio raíz del mini programa para almacenar las funciones de la nube. Cree una carpeta con el nombre debajo de cloudfunctionsla carpeta aggregateRecordspara almacenar funciones en la nube que agregan registros.

  • Inicializar el entorno de desarrollo en la nube

    Cree un archivo con el nombre en aggregateRecordsla carpeta initCloudBase.jspara inicializar el entorno de desarrollo en la nube. El contenido del archivo es el siguiente:

// 初始化云开发环境
wx.cloud.init({
    
    
  env: 'your-cloud-env-id' // 替换为你的云开发环境的 ID
})
  • Crear una función en la nube

    Cree un archivo con el nombre en aggregateRecordsla carpeta aggregateRecords.jspara escribir funciones en la nube. El contenido del archivo es el siguiente:

// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()

// 聚合记录的云函数
exports.main = async (event, context) => {
    
    
  const db = cloud.database()
  try {
    
    
    // 根据传入的条件进行聚合查询(必选)
    const result = await db.collection('todos').aggregate() // 默认聚合所有文档并返回一个包含所有聚合结果的数组
    if (result.length === 0) {
    
     // 如果查询结果为空,返回提示信息(可选)
      return 'No records found.'
    } else {
    
     // 如果查询结果不为空,返回查询结果(必选)
      return result[0]._id // 仅返回第一条记录的 ID(根据实际需求修改)
    }
  } catch (e) {
    
     // 打印错误信息并抛出异常(必选)
    console.error(e)
    throw e
  } finally {
    
     // 关闭云开发环境,释放资源(可选)
    cloud.database().collection('todos').doc('recordId').get().then(res => {
    
     // 根据查询条件查找并获取记录(可选)
      if (res.data && res.data.title) {
    
     // 如果找到记录,返回记录数据(可选)
        return res.data // 仅返回第一条记录(根据实际需求修改)
      } else {
    
     // 如果未找到记录,返回 null(可选)
        return null
      }
    }).catch(err => {
    
     // 处理异常情况(可选)
      console.error('Error checking record status:', err) // 打印检查记录状态时出现的错误信息(可以根据实际需求修改提示信息)
    })
    cloud.close() // 关闭云开发环境,释放资源(可选)
  }
}

Código de caso

Supongamos que tenemos un subprograma de WeChat para administrar las listas de compras de los usuarios. Esperamos contar la cantidad total de bienes comprados por los usuarios para recomendar productos de mayor precio a los usuarios o brindar otros servicios. Para implementar esta función, necesitamos utilizar el método de operación de agregación de la base de datos API de desarrollo de la nube del subprograma WeChat.

Descripción del código

  1. En el subprograma WeChat, debemos introducir bibliotecas y componentes relevantes. Agregue el siguiente código en el archivo app.json:
{
    
      
  "usingComponents": {
    
      
    "cloud-native": "/path/to/cloud-native"  
  }  
}

Entre ellos, "/ruta/a/nativo de la nube" es la ruta del componente de desarrollo de la nube.

  1. Introduzca componentes de bases de datos de desarrollo en la nube en páginas que requieran operaciones de agregación. Agregue el siguiente código al archivo .wxml correspondiente:
html复制代码

<cloud-native-database:bind id="bindData" dbname="{
     
     {dbname}}" collection="{
     
     {collection}}" key="{
     
     {key}}" />

Entre ellos, { {dbname}}, { {collection}} y { {key}} son los nombres de fuentes de datos, nombres de colecciones y nombres de claves correspondientes, que se pueden modificar según las necesidades reales.

  1. En la página que requiere operación de agregación, escriba la lógica de la operación de agregación. Agregue el siguiente código al archivo .js correspondiente:
// 获取云开发数据库组件实例  
const bindData = wx.cloud.database().collection('bind')  
// 定义聚合操作的计算方法  
const getTotalPrice = doc => {
    
      
  return doc.price * doc.quantity  
}  
// 调用 aggregate 方法进行聚合操作  
bindData.aggregate()  
  .match({
    
     price: {
    
     $gt: 0 } }) // 筛选价格大于0的记录  
  .groupBy({
    
     field: 'user_id', as: 'user_total_price' }) // 根据用户ID分组,计算每个用户的总金额  
  .sum('price', 'quantity', 'user_total_price') // 对每个分组的总金额进行求和操作  
  .exec((err, result) => {
    
      
    if (err) {
    
      
      console.error(err)  
      return  
    }  
    console.log(result) // 打印聚合结果  
  })

En el código anterior, primero obtenemos la instancia de la base de datos de desarrollo en la nube a través del método wx.cloud.database (), luego especificamos el nombre de la colección a través del método collection () y especificamos el nombre de la clave a través del método doc (). A continuación, definimos un método de cálculo de operación de agregación getTotalPrice, que recibe un objeto de documento como parámetro y devuelve el monto del documento. Luego, usamos el método agregado() para iniciar la operación de agregación. En la operación de agregación, usamos el método match() para filtrar registros con un precio mayor que 0, usamos el método groupBy() para agrupar según el ID del usuario y usamos el método sum() para sumar la cantidad total de cada grupo. . Finalmente, usamos el método exec() para realizar la operación de agregación y procesar los resultados devueltos. En el caso imprimimos los resultados a la consola.

Nota: La operación de agregación puede consumir mucho tiempo y recursos y debe optimizarse y ajustarse según la situación real. Además, es necesario prestar atención a la exactitud y seguridad de los datos al procesar los resultados de la agregación.

3. Base de datos de API de desarrollo en la nube del mini programa WeChat: número de registros estadísticos

La base de datos API de desarrollo en la nube del Mini Programa WeChat es una solución de base de datos rápida y conveniente que permite a los desarrolladores usar directamente funciones de bases de datos en la nube en Mini Programas sin tener que crear y administrar servidores ellos mismos. En la base de datos de la API de desarrollo de la nube del mini programa WeChat, podemos contar la cantidad de registros en condiciones específicas para comprender la distribución y escala de los datos en la base de datos. Este artículo presentará en detalle el método para contar la cantidad de registros en la base de datos API de desarrollo de la nube del subprograma WeChat a través de casos y código.

  • Entorno de desarrollo de nube abierta

    Antes de utilizar el desarrollo en la nube, debe abrir un entorno de desarrollo en la nube. Inicie sesión en la plataforma pública WeChat, ingrese a la página "Desarrollo" -> "Desarrollo en la nube" y siga las instrucciones para completar la activación.

  • Crear un entorno de desarrollo en la nube

    cloudfunctionsDespués de activar el entorno de desarrollo en la nube, debe crear una carpeta con el nombre en el directorio raíz del mini programa para almacenar las funciones de la nube. Cree una carpeta con el nombre debajo de la carpeta para almacenar la función de nube que cuenta el número de registros cloudfunctions.countRecords

  • Inicializar el entorno de desarrollo en la nube

    Cree un archivo con el nombre en countRecordsla carpeta initCloudBase.jspara inicializar el entorno de desarrollo en la nube. El contenido del archivo es el siguiente:

// 初始化云开发环境
wx.cloud.init({
    
    
  env: 'your-cloud-env-id' // 替换为你的云开发环境的 ID
})    
  • Crear una función en la nube

    Cree un archivo con el nombre en countRecordsla carpeta countRecords.jspara escribir funciones en la nube. El contenido del archivo es el siguiente:

// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()

// 统计记录数量的云函数
exports.main = async (event, context) => {
    
    
  const db = cloud.database()
  try {
    
    
    // 根据传入的条件查询记录数量(必选)
    const result = await db.collection('todos').count() // 默认返回集合中文档的数量(即记录数量)
    if (result > 0) {
    
     // 如果查询结果大于 0,返回记录数量(可选)
      return result // 仅返回第一条记录的 ID(根据实际需求修改)
    } else {
    
     // 如果查询结果小于等于 0,返回提示信息(可选)
      return 'No records found.'
    }
  } catch (e) {
    
     // 打印错误信息并抛出异常(必选)
    console.error(e)
    throw e
  } finally {
    
     // 关闭云开发环境,释放资源(可选)
    cloud.database().collection('todos').doc('recordId').get().then(res => {
    
     // 根据查询条件查找并获取记录(可选)
      if (res.data && res.data.title) {
    
     // 如果找到记录,返回记录数据(可选)
        return res.data // 仅返回第一条记录(根据实际需求修改)
      } else {
    
     // 如果未找到记录,返回 null(可选)
        return null
      }
    }).catch(err => {
    
     // 处理异常情况(可选)
      console.error('Error checking record status:', err) // 打印检查记录状态时出现的错误信息(可以根据实际需求修改提示信息)
    })
    cloud.close() // 关闭云开发环境,释放资源(可选)
  }
}

Código de caso

Supongamos que tenemos un subprograma de WeChat para administrar las listas de compras de los usuarios. Queremos contar la cantidad de artículos en una colección de lista de compras para comprender las preferencias y tendencias de compra de los usuarios. Para implementar esta función, necesitamos utilizar el método de número de registro estadístico de la base de datos API de desarrollo de la nube del subprograma WeChat.

Descripción del código

  1. En el subprograma WeChat, debemos introducir bibliotecas y componentes relevantes. Agregue el siguiente código en el archivo app.json:
{
    
      
  "usingComponents": {
    
      
    "cloud-native": "/path/to/cloud-native"  
  }  
}

Entre ellos, "/ruta/a/nativo de la nube" es la ruta del componente de desarrollo de la nube.

  1. Introduzca el componente de base de datos de desarrollo en la nube en la página donde se debe contar el número de registros. Agregue el siguiente código al archivo .wxml correspondiente:
html复制代码

<cloud-native-database:bind id="bindData" dbname="{
     
     {dbname}}" collection="{
     
     {collection}}" key="{
     
     {key}}" />

Entre ellos, { {dbname}}, { {collection}} y { {key}} son los nombres de fuentes de datos, nombres de colecciones y nombres de claves correspondientes, que se pueden modificar según las necesidades reales.

  1. En la página donde se debe contar el número de registros, escriba la lógica para contar el número de registros. Agregue el siguiente código al archivo .js correspondiente:
// 获取云开发数据库组件实例  
const bindData = wx.cloud.database().collection('bind')  
// 定义查询条件  
const query = {
    
    } // 查询所有记录  
// 调用 count 方法统计记录数量  
bindData.count(query).then(res => {
    
      
  // 处理统计结果  
  console.log(res)  
})

En el código anterior, primero obtenemos la instancia de la base de datos de desarrollo en la nube a través del método wx.cloud.database (), luego especificamos el nombre de la colección a través del método collection () y especificamos el nombre de la clave a través del método doc (). A continuación, definimos una consulta de objeto vacío para consultar todos los registros. Finalmente, usamos el método count() para contar el número de registros y devolver un objeto Promise. En este caso, enviamos los resultados estadísticos a la consola.

Nota: Las estadísticas de la cantidad de registros pueden consumir una cierta cantidad de tiempo y recursos y deben optimizarse y ajustarse de acuerdo con la situación real. Además, es necesario prestar atención a la exactitud y seguridad de los datos al procesar resultados estadísticos.

Supongo que te gusta

Origin blog.csdn.net/u014096024/article/details/132774092
Recomendado
Clasificación