|
| Problemer med AND og OR i mysql! Fra : -Martin- |
Dato : 21-02-02 21:10 |
|
SELECT
CONCAT(LEFT(aftale, $long_tekst), '...') AS shortaftale,
aftale
FROM aftaler
WHERE aftale_bruger_id IS NULL
AND til >= '$timestamp_date'
AND fra <= '$timestamp_date'
OR aftale_bruger_id = '$ses_navn'
Undskyld PHP koden, men den er en del væsentlig og nej, problemet
ligger i sql syntaxen
Men her en forklaring
Hvis $ses_navn ikke er sat, så har jeg lavet noget PHP snask som ikke
får aftale_bruger_id = '$ses_navn' statementen til at køres, så det
virker helt fint!
Så problemet er :
Hvis ses_navn er 1 så "skider" den på til og fra statementen, men hvis
jeg skriver AND aftale_bruger_id = '$ses_navn' så får den KUN der hvor
aftale_bruger_id er 1 i tabellen og altså ikke noget og ikke dem som
er NULL!
Hvordan skal det gøres ?
PS: Det er mysql jeg bruger og PHP hvis det skulle være
| |
Stuffy (22-02-2002)
| Kommentar Fra : Stuffy |
Dato : 22-02-02 13:34 |
|
> SELECT
> CONCAT(LEFT(aftale, $long_tekst), '...') AS shortaftale,
> aftale
> FROM aftaler
> WHERE aftale_bruger_id IS NULL
> AND til >= '$timestamp_date'
> AND fra <= '$timestamp_date'
> OR aftale_bruger_id = '$ses_navn'
Hvad med paranteser?
AND til >= '$timestamp_date'
AND ( fra <= '$timestamp_date' OR aftale_bruger_id = '$ses_navn' )
Hilsen Jimmy
| |
Kim Emax - ayianapa.~ (26-02-2002)
| Kommentar Fra : Kim Emax - ayianapa.~ |
Dato : 26-02-02 23:46 |
|
"-Martin-" <admin@natten-i.dk> skrev
> Undskyld PHP koden, men den er en del væsentlig og nej, problemet
> ligger i sql syntaxen
stadig... print queryen ud på skrærmen, det hjælper en del... også for dem,
der evt. skal kigge på det her, hvis du f.eks. har lavet en join og har
brugt en tom variabel eller en, der er overskrevet med en anden værdi...
--
Take Care
Kim Emax
http://www.emax.dk
http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop
| |
|
|