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

Hibernate Criteria API:uzyskaj n losowych wierszy

Właściwie jest to możliwe dzięki Kryteriom i odrobinie poprawek. Oto jak:

Criteria criteria = session.createCriteria(Table.class);
criteria.add(Restrictions.eq("fieldVariable", anyValue));
criteria.add(Restrictions.sqlRestriction("1=1 order by rand()"));
criteria.setMaxResults(5);
return criteria.list();

każde Restrictions.sqlRestriction doda słowo kluczowe „i”; więc aby zniwelować jego efekt, dodamy warunek fikcyjny i wstrzykniemy naszą funkcję rand().



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. TO_DAYS() Przykłady – MySQL

  2. Jak uzyskać odpowiednik ResultSetMetaData bez ResultSet?

  3. Integracja MySQL z Pythonem w systemie Windows

  4. Jak porównać dwie kolumny, aby znaleźć niedopasowane rekordy w MySQL?

  5. Tłumaczenie mongodb dla sql INSERT...SELECT