Resumen: En este tutorial, aprenderá cómo usar la función PostgreSQL RANK() para asignar un rango para cada fila de un conjunto de resultados.

Introducción a la función RANK() de PostgreSQL

la funciónRANK() asigna un rango a cada fila dentro de una partición de un conjunto de resultados.

Para cada partición, el rango de la primera fila es 1., La función RANK() agrega el número de filas vinculadas al rango vinculado para calcular el rango de la siguiente fila, por lo que los rangos pueden no ser secuenciales. Además, las filas con los mismos valores obtendrán el mismo rango.

lo siguiente ilustra la sintaxis de la función RANK():

Code language: CSS (css)

en esta sintaxis:

  • Primero, la cláusula PARTITION BY distribuye las filas del conjunto de resultados en particiones en las que se aplica la función ab5031f294″>

.,

  • Luego, la cláusula ORDER BY especifica el orden de las filas en cada una de las particiones a las que se aplica la función.
  • la función RANK() puede ser útil para crear informes top-N y bottom-N.,a9f5e0f»>

    tabla:

    el Cuarto, el uso de la etiqueta RANK() función para asignar rangos a las filas del conjunto de resultados de ranks tabla:

    La siguiente imagen se muestra la salida:

    Como se puede ver claramente a partir de la salida:

    • La primera y segunda filas de recibir el mismo rango, porque tienen el mismo valor A.,
    • Las filas tercera, cuarta y Quinta reciben el rango 3 porque la función RANK() omite el rango 2 y todas ellas tienen los mismos valores B.,he data of the products table:

      1) Using PostgreSQL RANK() function for the whole result set

      Este ejemplo utiliza la función RANK() para asignar un rango a cada producto por su precio:

      en este ejemplo, omitimos la cláusula PARTITION BY, por lo tanto, la función RANK() trató todo el conjunto de resultados como una sola partición.,

      la función RANK() calculó un rango para cada fila dentro de todo el conjunto de resultados ordenados por precios de alto a bajo.,

      2) usando la función RANK() de PostgreSQL con Ejemplo de cláusula de partición

      el siguiente ejemplo usa la función RANK() para asignar un rango a cada producto en cada grupo de productos:

      en este ejemplo:

      • Primero, la cláusula PARTITION BY distribuye productos en particiones agrupadas por ID de grupo de productos (group_id).
      • En segundo lugar, la cláusula ORDER BY ordena los productos en cada partición por sus precios de alto a bajo.,

      la función RANK() se aplicó a todos los productos de cada grupo de productos y se reinicia cuando el grupo de productos cambia.

      en este tutorial, ha aprendido cómo usar la función PostgreSQL RANK() para calcular un rango para cada fila en una partición de un conjunto de resultados.

      • ¿Fue útil este tutorial ?
      • YesNo