sql >> Databáze >  >> RDS >> Mysql

Jak zvýšit výkon SQL dotazu pro výběr ze 2 tabulek

Bohužel váš návrh databáze si vynucuje pomalý výkon.

To vyřeší váš problém s výkonem:Měli byste vytvořit novou tabulku (PRODUCT_INFO) a nastavit cizí klíč tak, aby odkazoval na primární klíč produktů. Naplňte tuto tabulku jednotlivými hodnotami z ATTRIBUTE_CODE a 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


  1. PHP MYSQL PDO SOUČET sloupců

  2. kubernetes timescaledb statefulset:Změny ztracené při rekreaci modulu

  3. Chcete přesto vytvořit spouštěč SQL Server DDL pro příkazy SELECT?

  4. Jak provést výběrový dotaz v bloku DO?