Do pewnego zapytania od tabeli Tree Kategorii potrzebne są dwie wartości lewa i prawa dla klauzuli WHERE np:
WHERE KT.lft >= 236 AND KT.rgt <= 315
wiec żeby te wartości uzyskać muszę wykonać wstępne zapytanie np:
SELECT K.lft, K.rgt FROM KatTree K WHERE K.id = 15
Ewentualnie jako dwa podzapytania:
Co jest kiepskie ze względu na dodatkowe zapytanie.
WHERE KT.lft >= (SELECT K.lft FROM KatTree K WHERE K.id = 15) AND KT.rgt <= (SELECT K.rgt FROM KatTree K WHERE K.id = 15)
Czy da się tak ułożyć to zapytanie by było jedno podzapytanie dajace dwie wartosci do wykorzystania z K.lft i K.rgt
coś jak tutaj: http://dev.mysql.com/doc/refman/5.0/en/row-subqueries.html
ale z warunkami >= i =<
SELECT * FROM t1 WHERE (col1,col2) = (SELECT col3, col4 FROM t2 WHERE id = 10);
Pozdarwiam