Query con filtro

giovedì 22 ottobre 2009 - 14.18

romaluca Profilo | Newbie

In un mio tableadapter vorrei aggiungere una query di questo tipo:

select * from missioni where UserID = @UserID

se lo user id viene specificato al momento della chiamata tutto funziona correttamente
ma se lo userid non viene specificato la query non funziona.

Vorrei che quando non viene specificato lo userid il risultato della query siano tutte le missioni indipendentemente dallo userid

come devo fare ?

Grazie

alx_81 Profilo | Guru

>Vorrei che quando non viene specificato lo userid il risultato
>della query siano tutte le missioni indipendentemente dallo userid
>come devo fare ?
Il comportamento è normale, perchè passi NULL allo userid che non ti torna nulla. In teoria gira ma non torna record. Un workaround potrebbe essere il seguente:
select * from missioni where (@UserID = NULL OR UserID = @UserID)
non è un gran che ma dovrebbe funzionare.

>Grazie
di nulla!

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

Pinky Profilo | Junior Member

Mi permetto di correggere la svista del post precedente:
cambiare "= NULL" con "IS NULL":
select * from missioni where (@UserID IS NULL OR UserID = @UserID)

Ciao
Alessandro

alx_81 Profilo | Guru

>Mi permetto di correggere la svista del post precedente:
>cambiare "= NULL" con "IS NULL":
>select * from missioni where (@UserID IS NULL OR UserID = @UserID)
Hai fatto benissimo, nella fretta ho scritto male.
Grazie mille, IS NULL è quello che serve.

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
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-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5