sql >> Databasteknik >  >> RDS >> Mysql

Välj slumpmässig rad från MySQL (med sannolikhet)

Om cur_odds ändras sällan kan du implementera följande algoritm:

1) Skapa en annan kolumn prob_sum , för vilket

2) Generera ett slumptal från 0 till 1:

3) Hitta den första raden för vilken prob_sum > rnd (om du skapar ett BTREE-index på prob_sum , frågan borde fungera mycket snabbare):



  1. En översikt över JSON-funktioner inom PostgreSQL

  2. Django self join , Hur man konverterar denna fråga till ORM-fråga

  3. Skapa en tabell i SQLite

  4. Bitvis förändring i mysql