Casella combinata

martedì 05 dicembre 2006 - 19.19

Eureka Profilo | Newbie

Ciao a tutti, avrei un problemino in access spero mi possiate essere d'aiuto
Allora dovrei creare una casella combinata che recuperi i dati da una tabella, e aggiungere una voce come per esempio "tutti",
per fare questo uso una query sql del tipo:
SELECT Ordini.Ordine
FROM Ordini
GROUP BY Ordini.Ordine

e così la casella combinata carica tutti gli ordini uno per uno, ora vorrei aggiungere una voce tipo "tutti" per riassumere la situazione complessiva....poi per l'estrazione dati sto usando un pò di codice VBA


grazie per l'aiuto

lbenaglia Profilo | Guru

>per fare questo uso una query sql del tipo:
>SELECT Ordini.Ordine
>FROM Ordini
>GROUP BY Ordini.Ordine
>
>e così la casella combinata carica tutti gli ordini uno per uno,
>ora vorrei aggiungere una voce tipo "tutti" per riassumere la
>situazione complessiva....poi per l'estrazione dati sto usando
>un pò di codice VBA

Ciao Eureka,

Non capisco bene il raggruppamento che fai, come è possibile avere gli stessi ordini duplicati?!
Comunque, utilizzando l'operatore UNION puoi "fondere" insieme i result set di due query in un unico result set finale, rimuovendo nel contempo eventuali duplicati (quindi puoi evitare di eseguire la GROUP BY).

Ti faccio un esempio basato sulla tabella Orders del database Northwind:

SELECT OrderID FROM Orders UNION SELECT 'Tutti' FROM Orders;

Purtroppo il Jet-Engine richiede espressamente che una SELECT abbia la corrispondente clausola FROM quando si utilizza l'operatore UNION, quindi la seconda query genererà un result set costituito da n righe tutte uguali quante sono le righe della tabella Orders ma l'operatore UNION restituirà 1 sola occorrenza.
Eventualmente puoi ricorrere all'operatore TOP per restituire 1 sola riga:

SELECT OrderID FROM Orders UNION SELECT TOP 1 'Tutti' FROM Orders;

Per maggiori dettagli sull'operatore UNION consulta l'help in linea di Microsoft Access.

>grazie per l'aiuto
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5