AND och OR?

Databaser & SQL

4 svar · 383 visningar · startad av PlayerOne

Medlem sedan maj 200062 inlägg
Trådstart#1

Varför fungerar inte följande AND-villkor? Jag får inget felmeddelande, den köper bara inte det. Har det nåt med prioriteringen av AND och OR att göra?

SQLStmt = "SELECT * FROM Kategorier INNER JOIN Events ON Kategorier.KatId = Events.KatId WHERE Event LIKE '%" & FixaTecken(Request.Form("sok")) & "%'"
SQLStmt = SQLStmt & " OR Info LIKE '%" & FixaTecken(Request.form("sok")) & "%'"
SQLStmt = SQLStmt & " OR Plats LIKE '%" & FixaTecken(Request.form("sok")) & "%'"
SQLStmt = SQLStmt & " OR KatNamn LIKE '%" & FixaTecken(Request.form("sok")) & "%'"
SQLStmt = SQLStmt & " AND Slutdatum < '" & date & "'" 
SQLStmt = SQLStmt & " ORDER BY StartDatum DESC, Tid DESC"
	
Set RS = Connection.Execute(SQLStmt)
Medlem sedan juni 200032 967 inlägg
#2

du får la gruppera med parentes runt alla or-villkoren.

lite svårt dock, eftersom du inte uppger vad det är du vill åstadkomma.

Medlem sedan maj 200062 inlägg
#3

Det är en sökfunktion som ska söka igenom fälten Event, Info, Plats och KatNamn efter det man har anget i formuläret 'sok'. Det funkar bra om jag vill ha alla poster som stämmer in på sökningen, men jag skulle endast vilja ha posterna där attributet SlutDatum är äldre än dagens datum

Medlem sedan juni 200032 967 inlägg
#4
...where (event like ... or info like ... or plats like ... or katnamn like ...) and slutdatum ...

alltså, parentes runt alla or-villkor.

Medlem sedan maj 200062 inlägg
#5

Hur fixar jag det när det står på olika rader?
Glöm det, det fixade sig...

[Redigerat av PlayerOne den 12 jul 2000]

245 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)