  
  .. class:: PercentRank(*expressions, **extra)
  
  Computes the relative rank of the rows in the frame clause. This computation is
  equivalent to evaluating::
  
      (rank - 1) / (total rows - 1)
  
  The following table explains the calculation for the relative rank of a row:
  
 
</s> remove This is equivalent to the following SQL ``WHERE`` clause::
 </s> add This is equivalent to the following SQL ``WHERE`` clause:

.. code-block: sql </s> remove explaining how this would work for a dynamically generated web page::
 </s> add explaining how this would work for a dynamically generated web page:

.. code-block:: text </s> remove 32-bit, 8 character digest in the constraint name; for example::
 </s> add 32-bit, 8 character digest in the constraint name; for example:

.. code-block:: sql </s> remove in model ``Bar``, instead of using the model name ``bar`` as the lookup::
 </s> add in model ``Bar``, instead of using the model name ``bar`` as the lookup:

.. code-block:: pycon </s> remove :class:`~django.contrib.auth.models.User` object is a string in this format::
 </s> add :class:`~django.contrib.auth.models.User` object is a string in this format:

.. code-block:: text
equivalent to evaluating:

.. code-block:: text
  
  .. class:: PercentRank(*expressions, **extra)
  
  Computes the relative rank of the rows in the frame clause. This computation is
equivalent to evaluating:

.. code-block:: text
  
      (rank - 1) / (total rows - 1)
  
  The following table explains the calculation for the relative rank of a row:
  
keep keep keep keep replace keep keep keep keep keep
 Refs #34140 -- Corrected rst code-block and various formatting issues in docs. 
docs/ref/models/database-functions.txt