Rumah > pangkalan data > tutorial mysql > Bagaimanakah SELECT TOP 100 PERCENT Membolehkan Pemwujudan Perantaraan dalam SQL Server?

Bagaimanakah SELECT TOP 100 PERCENT Membolehkan Pemwujudan Perantaraan dalam SQL Server?

Barbara Streisand
Lepaskan: 2025-01-01 13:37:20
asal
906 orang telah melayarinya

How Does SELECT TOP 100 PERCENT Enable Intermediate Materialization in SQL Server?

Pewujudan Perantaraan dengan PILIH TOP 100 Peratus

Sebelum SQL Server 2005, teknik yang dipanggil "pewujudan perantaraan" boleh digunakan untuk memaksa SQL Server untuk menghormati klausa ORDER BY dalam definisi paparan dengan memasukkan 100 PERATUS TERATAS dalam SELECT pernyataan.

Walau bagaimanapun, penggunaannya telah melangkaui definisi paparan dalam pernyataan SQL dinamik. Tujuan utama SELECT TOP 100 PERCENT dalam konteks ini adalah untuk memanfaatkan pewujudan pertengahan. Teknik ini melibatkan mencipta set hasil perantaraan dengan meletakkan klausa ORDER BY dalam binaan 100 PERATUS TERATAS.

Salah satu contoh teknik ini mungkin bermanfaat ialah apabila anda perlu menggunakan penapis pada hasil pertanyaan bersarang. . Pertimbangkan pertanyaan berikut:

SELECT foo
FROM (SELECT foo FROM MyTable WHERE ISNUMERIC (foo) = 1) bar
WHERE CAST(foo AS int) > 100
Salin selepas log masuk

Dalam contoh ini, pertanyaan dalam mengembalikan set hasil yang kemudiannya ditapis dalam pertanyaan luar. Walau bagaimanapun, klausa ORDER BY dalam pertanyaan dalam mungkin tidak dihormati, yang membawa kepada keputusan yang tidak dapat diramalkan.

Dengan menambahkan SELECT 100 PERCENT TOP pada pertanyaan dalaman, anda boleh memaksa pewujudan perantaraan:

SELECT foo
FROM (SELECT TOP 100 PERCENT foo FROM MyTable WHERE ISNUMERIC (foo) = 1 ORDER BY foo) bar
WHERE CAST(foo AS int) > 100
Salin selepas log masuk

Kewujudan perantaraan ini memastikan bahawa set hasil daripada pertanyaan dalaman dipesan sebelum ditapis di bahagian luar pertanyaan, memberikan hasil yang diingini.

Perlu ambil perhatian bahawa teknik ini hanya boleh digunakan apabila perlu dan dengan berhati-hati, kerana perubahan dalam konfigurasi pelayan (cth., tahap tampung, skema, indeks, kiraan baris) berpotensi mengganggu fungsinya.

Atas ialah kandungan terperinci Bagaimanakah SELECT TOP 100 PERCENT Membolehkan Pemwujudan Perantaraan dalam SQL Server?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan