Czy inRandomOrder() jest wydajne?

Czy inRandomOrder() jest wydajne?
LI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

Mam zapytanie, które pobiera 10 losowych rekordów z tabeli z wyjątkiem rekordu o id = 1. Czy poniższe zapytanie jest wydajne czy można je uprościć i przyspieszyć jego działanie?

Kopiuj
<?php

$randomCars = Car::where('id', '!=', '1')->inRandomOrder()->take(10)->get();
Patryk27
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 13042
1

inRandomOrder() buduje zapytanie z klauzulą order by rand(), co jest - z punktu widzenia aplikacji - najwydajniejszym sposobem podejścia do tematu.
Poza tuningiem bazy danych nic więcej tutaj nie zrobisz.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.