Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> WHERE z podzapytania dla dwóch kolumn
Mion
post
Post #1





Grupa: Zarejestrowani
Postów: 105
Pomógł: 6
Dołączył: 7.03.2005

Ostrzeżenie: (0%)
-----


Witam ponownie,

Do pewnego zapytania od tabeli Tree Kategorii potrzebne są dwie wartości lewa i prawa dla klauzuli WHERE np:
  1. WHERE KT.lft >= 236 AND KT.rgt <= 315

wiec żeby te wartości uzyskać muszę wykonać wstępne zapytanie np:
  1. SELECT K.lft, K.rgt FROM KatTree K WHERE K.id = 15


Ewentualnie jako dwa podzapytania:
  1. WHERE KT.lft >= (SELECT K.lft FROM KatTree K WHERE K.id = 15)
  2. AND KT.rgt <= (SELECT K.rgt FROM KatTree K WHERE K.id = 15)
Co jest kiepskie ze względu na dodatkowe zapytanie.

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
  1. SELECT * FROM t1
  2. WHERE (col1,col2) = (SELECT col3, col4 FROM t2 WHERE id = 10);
ale z warunkami >= i =<

Pozdarwiam

Ten post edytował Mion 31.10.2011, 17:23:30
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
tvister
post
Post #2





Grupa: Zarejestrowani
Postów: 253
Pomógł: 29
Dołączył: 18.08.2008

Ostrzeżenie: (0%)
-----


Będę improwizował ale wydaje mi się że można posłużyć się klauzulą from .
  1. SELECT * FROM kat,
  2. (SELECT K.lft,K.rgt FROM kat K WHERE K.id = 15) AS rzopa
  3. WHERE KT.lft >= rzopa.lft AND KT.rgt <= rzopa.rgt
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.09.2025 - 04:23