W najprostszym przypadku podzaptanie jest prostym argumentem. Możemy więc go używać wszędzie tam, gdzie tylko można użyć wartości z kolumny lub po prostu jakiejś wartości dosłownej.
Podczas używania więc podzapytań możemy się spodziewać, że podzapytanie będzie miało wszystkie te właściwości, które mają zwykłe argumenty: typ danych, długośc, wskazanie, czy może być wartością NULL itd.
Na przykład (patrz Lisitng 1.0)
Podzapytanie w tym poleceniu SELECT jest typu CHAR, ma długość 5 znaków, i może mieć wartość NULL. W zasadzie prawie wszystkie podzapytania mogą mieć wartość NULL, gdyż jeśli tablica jest pusta, tak jak w przykładzie powyżej, wtedy wartość podzapytania będzie równa NULL.
Jest kilka ograniczeń związanych z używaniem podzapytań:
-
Zapytanie zewnętrzne (wyrażenie zewnętrzne) może być jednym z: SELECT, INSERT, UPDATE, DELETE, SET, DO
-
Podzapytanie może zawierac jakiekolwiek ze słów kluczowych, które może zwierac zwykłe polecenie SELECT: DISTINCT, GROUP BY, ORDER BY, LIMIT i inne formy wyrażeń języka SQL.
Listing
CREATE TABLE t1 (s1 INT, s2 CHAR(5) NOT NULL);
SELECT (SELECT s2 FROM t1);
Ranga: Administrator serwisu Punktów: 0

