Skum SELECT-sats

Databaser & SQL

1 svar · 194 visningar · startad av Web-Tor

Medlem sedan nov. 200013 890 inlägg
Trådstart#1

En tabell har kolumnerna:

Produkt
Tillval_1
Tillval _2
Tillval _3

Produkt innehåller namn på olika produkter.
Tillval _1, 2 och 3 innehåller JA eller NEJ beroende på vad användaren valt. Det kan vara flera JA och det måste vara minst ett JA.

Låt oss säga att första raden i databasen ser ut så här:
Produkt: Volvo
Tillval_1: JA
Tillval_2: JA
Tillval_3: JA

Andra raden ser ut så här:
Produkt: Saab
Tillval_1: JA
Tillval_2: NEJ
Tillval_3: NEJ

En sökning i databasen via ett vanligt formulär kan se ut så här:

$produkt = 'Volvo';

$val_1 = 'JA';
$val_2 = '';     // *** Inget val *** //
$val_3 = '';     // *** Inget val *** //

$result = mysql_query("SELECT * FROM tabel WHERE  Tillval _1 = '$val_1' or Tillval _2 = '$val_2' or Tillval _3 = '$val_3' and Produkt = '$produkt'");

Det är SELECT-satsen jag inte kan få ihop. Jag vill få träff där Produkten stämmer överens och något av tillvalen finns med. I denna SELECT-satsen får jag träff på både rad 1 och 2? Borde jag inte bara få träff på rad 1??? :q

/TOr

Medlem sedan nov. 200013 890 inlägg
#2

Glöm det! Jag hade viss bara glömt bort lite parenteser. :e

250 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)