[SQL] Join geeft geen waarde terug als...

Pagina: 1
Acties:

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 15-09 07:50

BierPul

2 koffie graag

Topicstarter
code:
1
2
3
4
5
6
7
8
9
SELECT tbl_users.usr_nme,
     tbl_users.usr_id, 
     tbl_users.usr_sex, 
     tbl_users.usr_foto, 
     tbl_music.msic_nme
     FROM tbl_users
     LEFT JOIN tbl_music on tbl_music.msic_id = tbl_users.usr_music

WHERE tbl_users.usr_nme LIKE '%$usr_naam%' AND tbl_users.usr_sex LIKE '$sex'  AND tbl_users.usr_music LIKE '$usr_muziek' ORDER BY usr_nme

Via deze query doe ik een search op mn members alls lijkt ok te gaan behalve als $usr_muziek de waarde % krijgt (waar ik dus mee wil zeggen doe ze allemaal maar) dan krijg ik geen resultaat terug :(

Ja man


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:14
Welk DBMS gebruik je?
Ik heb het eens in Access geprobreerd en geen problemen gehad..

https://fgheysels.github.io/


  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 15-09 07:50

BierPul

2 koffie graag

Topicstarter
Ik gebruik MySQL en leek me ook geen probleem

Ja man


Verwijderd

Waarom gebruik je 'like' als je eigenlijk een '=' doet voor de laatste twee condities? 'like' is langzaam vergeleken met '='.

Bouw je query dynamisch op, en als een inputwaarde (bijv. een form veld) leeg is (natuurlijk na een trim()), dan neem je de betreffende conditie niet op.

Enjoy :)