¿Puedo seleccionar una fila aleatoria utilizando la API ICriteria
de NHibernate?¿Cómo selecciono una fila aleatoria usando la API ICriteria de NHibernate?
6
A
Respuesta
13
Como dijo cundh2o, es específico de DBMS. Pero puede subclasificar la clase Order y definir su propio pedido personalizado. Por ejemplo, para SQL Server:
public class RandomOrder: Order {
public RandomOrder() : base("", true) {}
public override SqlString ToSqlString(ICriteria criteria, ICriteriaQuery criteriaQuery) {
return new SqlString("newid()");
}
}
1
Si no está limitado a usar ICriteria, podría recomendar el uso de HQL en su lugar para seleccionar una fila aleatoria, ya que puede proporcionar más flexibilidad para usar la función Aleatoria suministrada por su proveedor de db.
IQuery q = NHibernateSession.CreateQuery("your hql statement here")
Cuestiones relacionadas
- 1. NHibernate SetTimeout en ICriteria
- 2. ¿Cómo expreso esta consulta LINQ utilizando la API de NHibernate ICriteria?
- 3. ¿Es posible obtener un IEnumerable perezoso de una consulta de NHibernate usando ICriteria?
- 4. NHibernate - Implementar la consulta "NOT IN" utilizando ICriteria
- 5. Linq a NHibernate frente a ICriteria
- 6. Seleccionar una fila aleatoria de SQL usando PHP
- 7. Fila aleatoria de Oracle de la tabla
- 8. ¿Cómo selecciono la última fila secundaria de una relación padre/hijo usando SQL
- 9. NHibernate 2.1: LEFT JOIN en subconsulta con Alias (ICriteria)
- 10. MySQL: ¿Cómo recuperar una fila aleatoria o varias filas aleatorias?
- 11. Cómo recuperar una fila aleatoria mediante Doctrine2 querybuilder?
- 12. selección de fila aleatoria rápida en Postgres
- 13. ¿Seleccionar una fila aleatoria por valor de campo distinto?
- 14. Seleccionar una fila aleatoria de MySQL (con probabilidad)
- 15. NHibernate actualiza la fila antes de eliminarla?
- 16. ¿Cómo selecciono solo elementos visibles usando XPath?
- 17. ¿cómo selecciono una columna según la condición?
- 18. ¿Cómo selecciono un elemento hermano usando jQuery?
- 19. ¿Cómo selecciono los subdirectorios en una hormiga usando un FileSet?
- 20. ¿Cómo selecciono el conde (*) de los resultados de una de NHibernate subconsulta
- 21. Cómo persistir una enumeración usando NHibernate
- 22. ¿Cómo solicito una sola fila aleatoria de una base de datos de force.com en SOQL?
- 23. ¿Cómo tomo la "N superior" usando la API de NHibernate Criteria?
- 24. Cómo selecciono entidades anidadas recursivas usando LINQ a la Entidad
- 25. ¿Obtienes un conjunto de resultados distinto de NHibernate usando la API de Criteria?
- 26. actualizar una fila usando la primavera JdbcTemplate
- 27. Cómo generar una fecha aleatoria entre dos fechas usando php?
- 28. ¿Cómo selecciono una opción mediante prototipo
- 29. ¿Cómo liberar una fila bloqueada usando JPA?
- 30. ¿Cómo puedo asignar una fila a una clase usando Anorm?
2.1.2 compatibles: public override SqlString ToSqlString (criterios ICriteria, ICriteriaQuery criteriaQuery) {return new SqlString ("newid()"); } – mxmissile
@mxmissile: aplausos, actualicé mi respuesta. –
El uso de Newid como este conduce a un rendimiento terrible en tablas medianas a grandes. – UpTheCreek