Klauzula any

0

Jaka jest różnica między:

SELECT Imie, Nazwisko, YEAR(DataUrodzenia)
FROM SzczegoloweDaneCzlonkow
WHERE YEAR(DataUrodzenia) = ANY (SELECT RokPremiery FROM Filmy)

a:

SELECT Imie, Nazwisko, YEAR(DataUrodzenia)
FROM SzczegoloweDaneCzlonkow
WHERE YEAR(DataUrodzenia) = (SELECT RokPremiery FROM Filmy)
0

taka, że jak podzapytanie zwróci więcej niż jeden rekord to drugie się wysypie. Co do tego jak działa ANY to masz np. tu https://oracle-base.com/articles/misc/all-any-some-comparison-conditions-in-sql#any

0

W pierwszym przypadku warunek się spełni, jeżeli podzapytanie zwróci przynajmniej jeden wynik równy YEAR(DataUrodzenia)
W drugim przypadku podzapytanie musi zwrócić dokładnie jeden wynik, bo inaczej zapytanie się wysypie.

0

Czy to jest wydajniejsze niż IN? Bo innego zastosowania nie widzę.

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