sql >> Databáze >  >> RDS >> PostgreSQL

Jak získat jednu náhodnou položku z databáze v Django/postgreSQL?

Výběr náhodného prvku ze seznamu všech databázových objektů není řešením goog, protože načtení všech prvků databáze může mít velký dopad na výkon, stejně jako použití order_by('?') jak je uvedeno v dokumentaci django .

Nejlepším řešením by mělo být načtení prvku s náhodným indexem:

import random

random_idx = random.randint(0, Model.objects.count() - 1)
random_obj = Model.objects.all()[random_idx]


  1. Nepodporovaná možnost poskytnutá mysql_options()

  2. Vyberte sloupec, pokud má jiný sloupec hodnotu null

  3. Hibernate na Oracle:mapování vlastnosti String na sloupec CLOB

  4. Problém s řazením znaků s diakritikou v PostgreSQL 8.4