Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment augmenter les performances de la requête SQL pour sélectionner parmi 2 tables

Malheureusement, la conception de votre base de données ralentit les performances.

Cela résoudra votre problème de performances :vous devez créer une nouvelle table (PRODUCT_INFO) et faire en sorte que la clé étrangère pointe vers la clé primaire de produkty. Remplissez cette table avec les valeurs individuelles de ATTRIBUTE_CODE et ATTRIBUTE_VALUE.

SELECT pa.code
FROM ParametrickeVyhladavanie pa
WHERE EXISTS
(
SELECT 1 FROM produkty p
JOIN 
PRODUCT_INFO AS pi
ON    p.ProId = pi.ProduktID
WHERE pi.ATTRIBUTE_CODE = pa.Code
AND pi.ATTRIBUTE_VALUE = pa.ValueCode
AND p.KATEGORIA IN ('Mobily'))
GROUP BY pa.code