Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Losowo wybierz wiersze przez JPA

Tylko funkcje zdefiniowane w specyfikacji są obsługiwane przez wszystkich dostawców JPA i RAND lub RANDOM nie są. Więc nie sądzę, że można to zrobić w JPQL.

Byłoby to jednak możliwe w HQL (klauzula order by w HQL jest przekazywana do bazy danych, więc możesz użyć dowolnej funkcji):

String query = "SELECT o.id FROM Order o ORDER BY random()";
Query q = em.createQuery(query);
q.setMaxResults(5);

Ale powtarzam:

  1. To może nie działać z inną bazą danych.
  2. To może nie działać z innym dostawcą JPA.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. przesyłanie obrazów na serwer wiosną MVC i przechowywanie referencji w bazie mysql

  2. Ponowna próba zakleszczenia ActiveRecord3

  3. Co to jest LENGTH() w MySQL?

  4. Nie można połączyć się z bazą danych po pewnym czasie wdrożenia na serwerze

  5. Policz liczbę odrębnych wierszy dla wielu wartości