Rumah > pangkalan data > tutorial mysql > Bagaimanakah Klausa WHERE Boleh Mengoptimumkan Kemas Kini Penyata CASE dalam SQL Server 2005?

Bagaimanakah Klausa WHERE Boleh Mengoptimumkan Kemas Kini Penyata CASE dalam SQL Server 2005?

Patricia Arquette
Lepaskan: 2024-12-28 09:27:11
asal
246 orang telah melayarinya

How Can a WHERE Clause Optimize CASE Statement Updates in SQL Server 2005?

Menggunakan Klausa WHERE untuk Mengoptimumkan Kemas Kini Penyata CASE dalam SQL Server 2005

Dalam SQL Server 2005, pernyataan CASE boleh digunakan untuk mengemas kini rekod berdasarkan syarat yang ditetapkan. Semasa menggunakan klausa ELSE boleh mengendalikan baris yang tidak terjejas, ia boleh mengakibatkan imbasan yang tidak perlu bagi keseluruhan jadual. Ini boleh ditangani dengan menggunakan klausa WHERE.

Pertimbangkan pernyataan berikut:

UPDATE dbo.TestStudents  
SET LASTNAME = 
( CASE  
    WHEN (LASTNAME = 'AAA') THEN 'BBB' 
    WHEN (LASTNAME = 'CCC') THEN 'DDD' 
    WHEN (LASTNAME = 'EEE') THEN 'FFF' 
    ELSE  (LASTNAME)
END )
Salin selepas log masuk

Pernyataan ini akan mengemas kini rekod dalam jadual 'dbo.TestStudents', menukar nilai 'LASTNAME' sebagai mengikut syarat yang ditetapkan. Walau bagaimanapun, klausa ELSE akan menilai setiap rekod dalam jadual, walaupun yang tidak terjejas oleh syarat.

Untuk mengoptimumkan pernyataan ini, klausa WHERE boleh digabungkan untuk menapis rekod yang perlu dikemas kini:

UPDATE dbo.TestStudents  
SET     LASTNAME =  CASE  
                        WHEN LASTNAME = 'AAA' THEN 'BBB' 
                        WHEN LASTNAME = 'CCC' THEN 'DDD' 
                        WHEN LASTNAME = 'EEE' THEN 'FFF' 
                        ELSE LASTNAME
                    END 
WHERE   LASTNAME IN ('AAA', 'CCC', 'EEE')
Salin selepas log masuk

Dengan menambahkan klausa WHERE, pernyataan hanya menilai rekod dengan nilai 'NAMA TERAKHIR' ialah 'AAA', 'CCC' atau 'EEE'. Ini meningkatkan prestasi dan mengelakkan imbasan yang tidak perlu bagi baris yang tidak terjejas. Oleh itu, memasukkan klausa WHERE ialah teknik yang disyorkan untuk mengoptimumkan kemas kini kenyataan CASE dalam SQL Server 2005.

Atas ialah kandungan terperinci Bagaimanakah Klausa WHERE Boleh Mengoptimumkan Kemas Kini Penyata CASE dalam SQL Server 2005?. 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