Che cos'è una proiezione, in termini di teoria del database e NHibernate quando si utilizza SetProjection()?Che cos'è una proiezione?
risposta
Molto semplicemente, è una funzione che accetta un input (ad esempio una riga di database) e produce un output (ad esempio una delle colonne dalla riga o forse un calcolo basato su più colonne).
In Hibernate, da dove viene la funzione che produce l'output (ad es. la colonna) viene eseguito? Accade sul server di database SQL o si verifica sul server di applicazione/ibernazione dopo che i risultati della riga completa vengono restituiti? Grazie. – KyleM
@KyleM: È passato troppo tempo da quando ho usato NHibernate per dire con certezza, ma mi aspetto che venga eseguito come parte di SQL. –
Grazie .. è quello che penso anch'io. Ho appena ricordato un altro modo per controllare (hibernate query logging, che di solito non usiamo ..), quindi controllerò e riferirò. – KyleM
La proiezione è una delle operazioni di base dell'algebra relazionale. Ci vuole una relazione e una (possibilmente vuota) lista di attributi di quella relazione come input. Emette una relazione contenente solo l'elenco specificato di attributi con tuple duplicate rimosse. In altre parole, l'output deve anche essere una relazione.
Esempio, se la relazione R {A, B}, contiene tre tuple {1,10}, {2,10}, {3,20}, la proiezione di R sull'elenco di attributi {B} conterrà 2 tuple: {10}, {20}.
In breve, la proiezione è più o meno equivalente a SELECT DISTINCT in SQL (esclusi i casi con valori null e colonne duplicate).
In termini di sospensione, è come specificare quali colonne selezionare. Al contrario di lasciare che i mapping determinino quali colonne vengono recuperate. Ciò significa che è possibile specificare funzioni SQL, sottoquery, una singola colonna o forse tutto quanto sopra tramite ProjectionList. Ad esempio, se si desidera contare le righe in una tabella SetProjection(Projections.RowCount())
.
Proiezione significa sottoinsieme di colonne in una query.
select x, y, z from YourTable
x, y, z è la proiezione qui.
Non significa "sottoinsieme di colonne" piuttosto che "numero di colonne" ? – CoDEmanX
Se si ha familiarità con le tabelle SQL o database: La proiezione si riferisce al numero di campi/colonne/attributi da restituire. La selezione riguarda il numero di righe/record da restituire. Ci sono buoni video di spiegazioni here e here
Sebbene questi collegamenti possano rispondere alla domanda, è meglio includere qui le parti essenziali della risposta e fornire i collegamenti per riferimento.Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia. – Cleb
- 1. Che cos'è una proiezione in NHibernate?
- 2. Formula per una matrice di proiezione ortogonale?
- 3. Come eseguire la proiezione da una categoria?
- 4. Esiste una variante di min_element che richiede una funzione di proiezione?
- 5. Proiezione 3D (triangolo) inversa
- 6. proiezione ortogonale con numpy
- 7. Proiezione prospettica: provando che 1/z è lineare?
- 8. avanzata interrogazione proiezione
- 9. LINQ elemento di proiezione
- 10. Proiezione di array multidimensionale MongoDB
- 11. conflitto logico proiezione mappa mercatore
- 12. Proiezione prospettica - Aiuto a Noob
- 13. proiezione isometrica vera con opengl
- 14. C'è un modo per popolare con una proiezione in Mongoose?
- 15. Convertire una stringa in un numero nella proiezione MongoDB
- 16. Come creare una matrice di proiezione prospettica (nessuna API)
- 17. Perché Null è una proiezione LINQ non valida?
- 18. Proiezione di installazione su Leafletjs
- 19. Index nella sezione Selezionare proiezione
- 20. Matplotlib: errore "3d proiezione sconosciuta"
- 21. È possibile utilizzare COUNT con una proiezione DISTINCT JPA?
- 22. Proiezione di tuple raggruppate nel maiale
- 23. Proiezione utilizzando valori contestuali in AutoMapper
- 24. Informazioni sulla matrice di proiezione libGDX
- 25. proiezione vettoriale su matrice diagonale lungo
- 26. "sfera in un sacchetto" proiezione piano-sfera
- 27. mappatura proiezione Webgl/orditura quad/pin angolare
- 28. MongoDB Proiezione di un documento secondario
- 29. NDB proiezione di istanza Chiave o ID
- 30. La proiezione rende più lenta la query
possibile duplicato di [Che cos'è una proiezione in NHibernate?] (Http://stackoverflow.com/questions/4746995/che-is-a-proiezione-in-negreto) – philipxy