¿Qué es una proyección, en términos de teoría de base de datos y NHibernate cuando se usa SetProjection()?¿Qué es una proyección?
Respuesta
Muy simple, es una función que toma una entrada (por ejemplo, una fila de base de datos) y produce una salida (por ejemplo, una de las columnas de la fila, o quizás un cálculo basado en varias columnas).
En Hibernate, ¿dónde funciona la función que produce la salida (por ejemplo, la columna) se ejecuta? ¿Sucede en el servidor de la base de datos SQL o sucede en el servidor de la aplicación/hibernación después de que se devuelven los resultados de la fila completa? Gracias. – KyleM
@KyleM: Ha pasado mucho tiempo desde que utilicé NHibernate para decirlo con seguridad, pero esperaba que se ejecutara como parte del SQL. –
Gracias ... eso es lo que creo también. Acabo de recordar otra forma de verificar (hibernar el registro de consultas, que normalmente no usamos ...), así que verifico e informo. – KyleM
La proyección es una de las operaciones básicas de Algebra Relacional. Toma una relación y una lista (posiblemente vacía) de atributos de esa relación como entrada. Genera una relación que contiene solo la lista de atributos especificada con tuplas duplicadas eliminadas. En otras palabras, la salida también debe ser una relación.
Ejemplo, si la relación R {A, B}, contiene tres tuplas {1,10}, {2,10}, {3,20}, entonces la proyección de R sobre la lista de atributos {B} contendría 2 tuplas: {10}, {20}.
En resumen, la proyección es más o menos equivalente a SELECT DISTINCT en SQL (excluyendo casos con nulos y columnas duplicadas).
En términos de hibernación, es como especificar qué columnas seleccionar. A diferencia de dejar que las asignaciones determinen qué columnas se obtienen. Esto significa que puede especificar funciones sql, subconsultas, una sola columna, o tal vez todo lo anterior a través de una ProjectionList. Por ejemplo, si desea contar las filas en una tabla SetProjection(Projections.RowCount())
.
Proyección significa subconjunto de columnas en una consulta.
select x, y, z from YourTable
x, y, z es la proyección aquí.
¿No significa "subconjunto de columnas" en lugar de "número de columnas" ? – CoDEmanX
Si está familiarizado con SQL o tablas de base de datos: Proyección se refiere a la cantidad de campos/columnas/atributos a devolver. La selección se refiere al número de filas/registros que se devolverán. Hay buenas explicaciones de vídeo here y here
Si bien estos enlaces pueden responder a la pregunta, es mejor incluir las partes esenciales de la respuesta aquí y proporcionar los enlaces para referencia.Las respuestas de solo enlace pueden dejar de ser válidas si la página vinculada cambia. – Cleb
- 1. ¿Qué es una proyección en NHibernate?
- 2. ¿Por qué Null es una proyección LINQ no válida?
- 3. ¿Qué son la proyección y la selección?
- 4. ¿Es posible usar COUNT con una proyección DISTINCT JPA?
- 5. ¿Por qué esta referencia cíclica con una proyección de tipo es ilegal?
- 6. ¿Fórmula para una matriz de proyección ortogonal?
- 7. opengl proyección oblicua
- 8. IQueryable Lambda proyección Sintaxis
- 9. Proyección 3D inversa (triángulo)
- 10. ¿La proyección de tipo tiene un opuesto, o sigue siendo una proyección (o solo un mapeo)?
- 11. LINQ elemento de proyección
- 12. ¿Qué significa esta declaración? excepción de proyección()() Clase
- 13. Grails: ¿Proyección en muchas tablas?
- 14. Proyección en varios cuadros con Fluido NHibernate
- 15. ¿Cómo especializarse en una proyección de tipo en Scala?
- 16. "esfera en una bolsa" proyección de avión a esfera
- 17. nhibernate query Sintaxis de proyección de sobres
- 18. Cómo encontrar una matriz de proyección 3D en Surf Detection
- 19. Nhibernate proyección sobre las propiedades anidadas anidados
- 20. Matplotlib: "Error de proyección desconocida '3d'"
- 21. ¿Cómo se obtienen las matrices de proyección y proyección de modelos en OpenGL?
- 22. Proyección de tuplas agrupadas en Pig
- 23. Proyección en perspectiva - Ayuda a un Noob
- 24. Puntos bidimensionales de proyección inversa en 3D
- 25. ¿Qué es una ObjectMother?
- 26. ¿Qué es una corrutina?
- 27. ¿Qué es una corriente?
- 28. ¿Qué es una subclase
- 29. ¿Qué es una unión?
- 30. ¿Qué es una "Unidad"?
posible duplicado de [¿Qué es una proyección en NHibernate?] (Http://stackoverflow.com/questions/4746995/what-is-a-projection-in-nhibernate) – philipxy