Problema su query selezione

martedì 07 febbraio 2012 - 08.07

dotnetnapo Profilo | Junior Member

Ho un problema su una query che non riesco a risolvere, mia aiutate?

Supponiamo abbia una tab di questo tipo

ID | Campo1|
1 |K1T,K2T,K4T|
2 |K1T,K4T|
3 |K1T,K2T|

Il campo1 viene riempito tramite una seconda tab che contiene tutti i K1T, K2T ecc.ecc..

Se volessi fare una query sul campo1 ed estrarre tutti i record che contengono K1T e K2T mi viene normale fare manualmente dal db

select....
where campo1 LIKE '%K1T%' AND campo1 LIKE '%K2T%'

se però devo passare i parametri dalla url e fare

filtroricerca?campo1=k1t&campo1=k2t

la cosa non funziona...

Dove sbaglio?

Grazie

Gho5t Profilo | Junior Member

Ciao,
il problema potrebbe essere dovuto al fatto se il Db è case-sensitive, cioè se considera differenti le maiuscole/minuscole.
Quindi tu cerchi k1t mentre lui ha nel Db K1T e quindi non le considera uguali.
Ora non so in che linguaggio stai lavorando, però basta fare un .ToUpper() in .net perché dovrebbe andare.
Se un uomo non è disposto a correre qualche rischio per le sue idee, o le sue idee non valgono nulla o non vale nulla lui

alx_81 Profilo | Guru

>il problema potrebbe essere dovuto al fatto se il Db è case-sensitive,
>cioè se considera differenti le maiuscole/minuscole.
Di default però la collation è CASE INSENSTIVE.. Strano.. a meno che non l'abbia cambiato.

@dotnetnapo: Prova invece a fare debug e vedere proprio il comando SQL che sottometti al server prima di eseguire la query e facci sapere.
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

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