webForumDet fria alternativet

Case i SP

12 svar · 325 visningar · startad av KalsongCesar

KalsongCesarMedlem sedan mars 2001339 inlägg
#1

Har en sP som jag vill göra case utav where delen

om @nor är null ska den se ut

WHERE	Users.idxCampaign = @idxCampaign

om @nor inte är null ska den se ut

WHERE	Users.idxCampaign not like @idxCampaign

har testat if stas men funkar inge bra..
Så tänkte få till en case där som bara vljer vilken som ska väljas.

tack på förhand.

LarsGMedlem sedan dec. 200012 464 inlägg
#2
WHERE	
(@nor is null and Users.idxCampaign = @idxCampaign)
or
(@nor is not null and Users.idxCampaign not like @idxCampaign)

Varför like?

KalsongCesarMedlem sedan mars 2001339 inlägg
#3

Tack det funkar.

"Not like", vad är bättre? <>

@ndersMedlem sedan juni 200032 969 inlägg
#4

Om du ska göra exakta jämförelser passar väl = alldeles ypperligt :q

Använder du inte wildcards finns ingen anledning att använda Like.

KalsongCesarMedlem sedan mars 2001339 inlägg
#5

jo men vad ska jag ha istället för not like då.
KOm inte på vad det är för syntax som gäller != @idx...

LarsGMedlem sedan dec. 200012 464 inlägg
#6

"Not like", vad är bättre? <>

Ja.

KalsongCesarMedlem sedan mars 2001339 inlägg
#7

då kör vi
<>
=)

@ndersMedlem sedan juni 200032 969 inlägg
#8

Antingen <> eller NOT detena = detandra. :)

LarsGMedlem sedan dec. 200012 464 inlägg
#9

Eftersom SQL använder trevärdeslogik så kan man inte säga att

a <> b <==> not a = b
@ndersMedlem sedan juni 200032 969 inlägg
#10

Ok, det är inte ofta du tappar bort mig, men det där får du gärna förklara, om du har tid. :)

KalsongCesarMedlem sedan mars 2001339 inlägg
#11

Jag lämnar tråden nöjd med tidigare svar =)

Jesper TMedlem sedan nov. 20017 144 inlägg
#12

LarsG skrev:

Eftersom SQL använder trevärdeslogik så kan man inte säga att

Menar du

http://www.all2know.com skrev:

I den polyvalenta logiken motsvarar =100% 'sant' ('helt sant') och <100% 'falskt' ('icke-helt sant') och inget kan finnas mellan dessa, medan =0% motsvarar 'utelsluten' ('helt utesluten') och >0% motsvarar 'existens' (icke-helt utesluten'). I specialfallet med en två-värd kontext sammanfaller >0% med =100% och <100% med =0% så att 'falsk' nu motsvaras av värdet 0.

;)

Engine^Medlem sedan dec. 20003 887 inlägg
#13

Jesper T skrev:

LarsG skrev:

Eftersom SQL använder trevärdeslogik så kan man inte säga att

Menar du

http://www.all2know.com skrev:

I den polyvalenta logiken motsvarar =100% 'sant' ('helt sant') och <100% 'falskt' ('icke-helt sant') och inget kan finnas mellan dessa, medan =0% motsvarar 'utelsluten' ('helt utesluten') och >0% motsvarar 'existens' (icke-helt utesluten'). I specialfallet med en två-värd kontext sammanfaller >0% med =100% och <100% med =0% så att 'falsk' nu motsvaras av värdet 0.

;)

Eh, jasså?

144 ms totalt · 3 externa anrop · v20260731065814-full.2b84b982
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)