Query con sqlSERVER 2005 Express

martedì 10 febbraio 2009 - 16.59

zseven Profilo | Senior Member

Ciao ragazzi,
ho una pagina dove devo mostrare gli utenti che hanno avuto lamedia voto piu alta, e li vorrei mostrare in ordine decrescente però in base al numero di voti ricevuti.
Mi spiego meglio:
se Tizio ha ricevuto un voto da 5, e Caio due voti da 5, e Sempronio 3 voti da 2 vorrei che l'ordine di visualizzazione fosse:
Caio - mediavoto = 5 su due voti
Tizio - mediavoto = 5 su un voto
Sempronio - mediavoto = 2 su 3 voti

ho scritto questa query ma non ottengo il risultato sperato:
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
infatti con questo codice mi mostra 3 utenti che hanno come media voto 3, ordinandomeli per numero di voti, però mi esclude gli utenti che hanno un voto da 5.

Spero di essermi spiegato bene.
Sapete come risolvere?
Grazie mille

lbenaglia Profilo | Guru

>ho una pagina dove devo mostrare gli utenti che hanno avuto lamedia
>voto piu alta, e li vorrei mostrare in ordine decrescente però
>in base al numero di voti ricevuti.

Ciao Guido,

Posta la struttura della tabella (CREATE TABLE), alcune righe di prova (INSERT INTO) ed il result set che vorresti ottenere con quei dati.

>Grazie mille
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

zseven Profilo | Senior Member

Ciao Lorenzo,
purtroppo non sono in grado di farti un CREATE TABLE come vorresti tu...
posso cercare di spiegarti la struttura delle tabelle in questo modo:

per la tab_utenti è importante solo l'ID_utenti come contatore.

poi per la tab_voto_utente quando un utente effettua un voto vengono valorizzati i seguenti campi
ID_voto_utente - contatore
voto_utente - numerico
id_utente - numerico che è la chiave secondaria che recupera il valore di ID_utenti presente in tab_utenti.

Lo so non è quello che mi avevi chiesto nello specifico, spero tu riesca ad aiutarmi ugualmente.
Grazie mille
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