" Ara materyalizasyon (Google arama) " için kullanıldı
İyi makale: Adam Machanic: Ara maddeleşmenin sırlarını keşfetmek
Hatta daha temiz bir şekilde yapılabilmesi için bir MS Connect bile geliştirdi
Benim görüşüm "doğası gereği kötü değil", ancak% 100 emin olmadıkça kullanmayın. Sorun şu ki, sadece yaptığınız anda çalışıyor ve muhtemelen daha sonra değil (yama seviyesi, şema, dizin, satır sayıları vb.) ...
Çalışılan örnek
Bu başarısız olabilir çünkü şeylerin hangi sırayla değerlendirildiğini bilmiyorsunuz
SELECT foo From MyTable WHERE ISNUMERIC (foo) = 1 AND CAST(foo AS int) > 100
Bu da başarısız olabilir çünkü
SELECT foo
FROM
(SELECT foo From MyTable WHERE ISNUMERIC (foo) = 1) bar
WHERE
CAST(foo AS int) > 100
Ancak, bu SQL Server 2000'de yoktu. İç sorgu değerlendirilir ve bekletilir:
SELECT foo
FROM
(SELECT TOP 100 PERCENT foo From MyTable WHERE ISNUMERIC (foo) = 1 ORDER BY foo) bar
WHERE
CAST(foo AS int) > 100
Bunun hala SQL Server 2005'te çalıştığını unutmayın.
SELECT TOP 2000000000 ... ORDER BY...