How to display a record or data of one element from 3 associations

I am trying to display data from three separate tables.

1. product_master, which contains data about products, such as image, price, quantity, etc.

2. atribut_master that contains only atribut_id and attribute_name,

3. product_attrib_master, which contain data such as prod_id ie foreign key, id_ attribute, i.e. foreign key and product_attribute_value.

Now I have the following query:

SELECT
 pm.prod_name,
 am.attribute_name,
 pa.product_attribute_value
 FROM product_attrib_master pa
 LEFT JOIN attribute_master am
 ON pa.attribute_id = am.attribute_id
 LEFT JOIN product_master pm
 ON pa.prod_id=pm.prod_id
 ORDER BY pa.prod_id;

This query shows the following result:

enter image description here

Now I want to display the data of only a specific element. Suppose I want to display element data Nokia Lumia 925and prod_id = 12. Then what should I do?

Will someone tell me what to do?

+4
3

, WHERE, .   WHERE , SQL-, .

SELECT
    pm.prod_name,
    am.attribute_name,
    pa.product_attribute_value
FROM 
    product_attrib_master pa
LEFT JOIN 
    attribute_master am
ON 
    pa.attribute_id = am.attribute_id
LEFT JOIN 
    product_master pm
ON 
    pa.prod_id = pm.prod_id
WHERE 
    pm.prod_name = 'Nokia Lumia 925' AND pm.prod_id = 12
ORDER BY 
    pa.prod_id;
+1

where . :

SELECT
 pm.prod_name,
 am.attribute_name,
 pa.product_attribute_value
 FROM product_attrib_master pa
 LEFT JOIN attribute_master am
 ON pa.attribute_id = am.attribute_id
 LEFT JOIN product_master pm
 ON pa.prod_id=pm.prod_id
WHERE pm.prod_name ='Nokia Lumia 925'
 and prod_id = 12
 ORDER BY pa.prod_id;
+4
WHERE prod_name='Nokia Lumia 925' AND prod_id=12
+1
source

All Articles