Ik heb een query gemaakt waarbij de uitkomst gebaseerd moet zijn op 2 condities uit hetzelfde tabel.
Namelijk:
<?php
Select
producten.idproduct AS id, producten.productlink, producten.prijs, prod_omschrijving.producttitel, prod_categorie.idcategorieen, merk.merknaam
FROM producten
INNER JOIN prod_omschrijving ON producten.idproduct=prod_omschrijving.idproduct
INNER JOIN prod_categorie ON producten.idproduct=prod_categorie.idproduct
INNER JOIN merk ON producten.idmerk=merk.idmerk
INNER JOIN prod_sorteer ON prod_sorteer.idproduct=producten.idproduct
WHERE prod_omschrijving.taal='NL'
AND producten.verhuurlijst='1'
AND aantal >=0
AND prod_categorie.idcategorieen='5024'
AND prod_sorteer.groupid='3'
AND prod_sorteer.groupid='4'
GROUP BY prod_sorteer.idproduct
ORDER BY prod_omschrijving.producttitel
LIMIT 9 OFFSET 0
?>
Het gaat dan om dit gedeelte:
AND prod_sorteer.groupid='3'
AND prod_sorteer.groupid='4'
op deze pagina:
http://www.jcsl.nl/index-clean.php?lan=NL&pagina=verhuur&cat=rigging&subcat=truss&trusseigenschap=baseplate&trusssoort=vierkant_truss&pagnr=1
Op de pagina wordt de query ook weergegeven.
Wat ik dus wil is nu alle producten weergeven die in het tabel prod_sorteer bij de waarde groupid zowel 3 als 4 hebben.
het tabel ziet er als volgt uit:
INSERT INTO `prod_sorteer` (`id`, `idproduct`, `groupid`) VALUES
(21, 310, 3),
(34, 310, 4)
(ik heb de inhoud van het tabel even beperkt tot product 310 die als groupid 3 en 4 heeft).
Maar als ik dit zo doe krijg ik 0 resultaten. Nu had ik ergens gegelzen dat ik OR moest gebruiken, maar in dat geval krijg ik de resultaten die zowel groupid 3 of groupid4 hebben en ik wil juist dat ze aan beide condities voldoen.
Als er maar 1 conditie geselecteerd wordt werkt het script uiteraard wel.
Benader ik dit helemaal verkeerd en moet ik de opbouw van de tabellen geheel anders aanpakken of zit de oplossing in de query.
Ik hoop dat mijn vraag icm de link wat duidelijk is.
2.108 views