I have 2 tables:
product | specs_values
----------------|--------------
id | id
subcategory_id | product_id
art_no | spec_id
naam | value
brutoprijs |
per |
moq |
img |
note |
product
id | subcategory_id | art_no ........
1 | 103 | 10001
2 | 103 | 10002
3 | 103 | 10003
specs_values
id | product_id | spec_id | value
1 | 1 | 7 | black
2 | 1 | 8 | 0.65
3 | 2 | 7 | black
4 | 2 | 8 | 0.65
5 | 3 | 7 | red
6 | 3 | 8 | 0.65
Now i want a query that gives me the products 1 & 2 and not 3.
I have:
SELECT DISTINCT product.id, product.art_no FROM product,specs_values WHERE product.subcategory_id='103' AND ((specs_values.spec_id='8' AND specs_values.value='0.65') OR (specs_values.spec_id='7' AND specs_values.value='black')) AND product.id=specs_values.product_id GROUP BY product.id
but that gives me 3 back also. please help!