0% menganggap dokumen ini bermanfaat (0 suara)
4 tayangan2 halaman

Aturan Subquery SQL yang Perlu Diketahui

Dokumen ini menjelaskan aturan penggunaan subquery dalam SQL, termasuk bahwa subquery harus ditutup dalam tanda kurung, biasanya hanya memilih satu kolom, dan tidak boleh menggunakan ORDER BY. Selain itu, jika subquery menghasilkan banyak baris, harus menggunakan IN, dan tidak boleh memilih tipe data BLOB/ARRAY/CLOB. Aturan lain mencakup larangan membungkus subquery dengan UNION dan penggunaan BETWEEN secara langsung dengan subquery.

Diunggah oleh

ahdagaf641
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
4 tayangan2 halaman

Aturan Subquery SQL yang Perlu Diketahui

Dokumen ini menjelaskan aturan penggunaan subquery dalam SQL, termasuk bahwa subquery harus ditutup dalam tanda kurung, biasanya hanya memilih satu kolom, dan tidak boleh menggunakan ORDER BY. Selain itu, jika subquery menghasilkan banyak baris, harus menggunakan IN, dan tidak boleh memilih tipe data BLOB/ARRAY/CLOB. Aturan lain mencakup larangan membungkus subquery dengan UNION dan penggunaan BETWEEN secara langsung dengan subquery.

Diunggah oleh

ahdagaf641
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd

Aturan Subquery dalam SQL

a. Subquery harus ditutup dalam tanda kurung


Subquery wajib berada dalam tanda kurung agar dibedakan dari query utama.

Contoh:

SELECT nama FROM siswa

WHERE id_kelas = (SELECT id_kelas FROM kelas WHERE nama_kelas = 'XI


RPL');

b. Subquery biasanya hanya memilih satu kolom


Subquery biasanya mengembalikan satu kolom saja.

Contoh benar:

SELECT nama FROM siswa WHERE nis = (SELECT nis FROM nilai WHERE
nilai_akhir = 100);

Contoh salah:

SELECT nama FROM siswa WHERE (nis, nama) = (SELECT nis, nama FROM
nilai);

c. ORDER BY tidak boleh dipakai dalam subquery


ORDER BY hanya boleh dipakai di query utama.

Contoh:

SELECT nama FROM siswa WHERE umur > (SELECT AVG(umur) FROM siswa)
ORDER BY nama ASC;
d. Jika subquery menghasilkan banyak baris, gunakan IN
Jika hasil subquery lebih dari 1 baris, gunakan IN.

Contoh:

SELECT nama FROM siswa WHERE nis IN (SELECT nis FROM nilai WHERE
nilai_akhir > 80);

e. Subquery tidak boleh memilih tipe data BLOB/ARRAY/CLOB


Subquery tidak bisa membandingkan tipe data besar.

Contoh salah:

SELECT nama FROM siswa WHERE foto = (SELECT foto FROM arsip);

f. Subquery tidak boleh langsung ditutup dalam fungsi set


Tidak boleh membungkus subquery dengan UNION tanpa query utama.

Contoh salah:

(SELECT nama FROM siswa) UNION (SELECT nama FROM guru);

g. BETWEEN tidak boleh dipakai langsung dengan subquery


BETWEEN hanya menerima dua nilai, sedangkan subquery bisa mengembalikan
banyak baris.

Contoh salah:

SELECT nama FROM siswa WHERE umur BETWEEN (SELECT umur FROM
siswa);

Contoh benar:

SELECT nama FROM siswa WHERE nis IN (SELECT nis FROM nilai WHERE
nilai_akhir BETWEEN 80 AND 95);

Anda mungkin juga menyukai