SQL - jak zapisać zapytanie

0

Witam,
mógłby ktoś pomóc w napisani zapytania.

Mam 2 zapytania:
Dla danych relacji:

A (NR_A, NR_B)
B (NR_B, TYP_B, TYP_X)

  1. ((A*B) : NR_A=12) [TYP_B]
    • iloczyn kartezjanski
      : - selekcja
      [] - projekcja
  1. ((( A: NR_A=12) [NR_B]) * B ) [ TYP_B]

Drugie zapytanie jest szybsze, tylko nie potrafie zapisać go w SQL

0

Nie testowałem, ale to będzie coś w rodzaju:

SELECT TYP_B
FROM A, B
WHERE NR_A = 12;

SELECT TYP_B
FROM (SELECT NR_B
      FROM A
      WHERE NR_A = 12) t
CROSS JOIN B;

Różnica w wydajności jest prawdopodobnie żadna, gdyż silniki bazodanowe i tak optymalizują najpierw zapytanie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1