Ya, menerapkan batasan kunci asing dapat meningkatkan kinerja kueri. Ada berbagai transformasi yang terbuka untuk pengoptimal ketika ada batasan kunci asing yang sesuai yang tidak tersedia secara umum. Misalnya, jika Anda ingin bergabung dengan A
dan B
tetapi hanya pilih data dari B
, pengoptimal dapat menghilangkan A
dari rencana kueri sepenuhnya jika ada batasan kunci asing (hal semacam ini sangat berguna ketika Anda memiliki tampilan berguna yang bergabung dalam lebih banyak tabel daripada yang benar-benar dibutuhkan kueri Anda saat ini karena Anda tidak perlu menukar biaya kinerja gabungan tambahan terhadap penggunaan kembali kode dari penggunaan tampilan yang ada). Mereka juga berguna saat Anda melakukan hal-hal seperti menggunakan hal-hal seperti penulisan ulang kueri untuk menulis ulang kueri untuk menggunakan tampilan yang terwujud dalam gudang data/sistem tipe DSS.
Tom Kyte memiliki presentasi Metadata Matters yang membahas tentang bagaimana berbagai jenis batasan, bersama dengan potongan metadata lainnya, dapat memengaruhi pengoptimal.