webForumDet fria alternativet

kombinera and och or

Databaser & SQLur Databashanterare & SQL

3 svar · 213 visningar · startad av daniel_ra

Medlem sedan jan. 2002381 inlägg
Frågan#1

Jag försöker att kombinera and och or på följande vis:


"Select * from tabell where kolumn1 like '% " & varde & "' or kolumn1 like '" & varde & " %'  or kolumn1 like '% " & varde & " %' AND kolumn1 like '% " & varde2 & "' or kolumn1 like '" & varde2 & " %' or kolumn1 like '% " & varde2 & " %'"

Det jag vill åstadkomma är alltså att kontrollera om varde och varde2 finns i kolumnen kolumn1 i databasen. Båda orden skall alltså finnas. Det som dock händer vid sökning är att den struntar i det som finns efter and. vad jag än skriver in för värde2 så får jag träffar. Mycket underligt. Går det att kombinera and och or på det sätt jag gjort?

Medlem sedan juni 200032 967 inlägg
#2

Det är inte konstigt. Du skola använda parenteser för att gruppera dina villkor.

"Select * from tabell where (kolumn1 like '% " & varde & "' or kolumn1 like '" & varde & " %'  or kolumn1 like '% " & varde & " %') AND (kolumn1 like '% " & varde2 & "' or kolumn1 like '" & varde2 & " %' or kolumn1 like '% " & varde2 & " %')"
Medlem sedan jan. 2002381 inlägg
#3

trodde att or prioriterades framför or.. Tack.. ska testa om jag får det att funka nu då

Medlem sedan juni 200032 967 inlägg
#4

And har högre precedens än or.

Var det det du menade?

(Det är aldrig fel att använda parenteser för att vara tydlig heller - det underlättar ju för det felsökande ögat.)

137 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)