Itu digunakan untuk "materialisasi menengah (pencarian Google)"
Artikel bagus:Adam Machanic:Menjelajahi rahasia materialisasi perantara
Dia bahkan mengangkat MS Connect sehingga dapat dilakukan dengan cara yang lebih bersih
Pandangan saya "tidak buruk secara inheren", tetapi jangan menggunakannya kecuali 100% yakin. Masalahnya adalah, ini hanya berfungsi pada saat Anda melakukannya dan mungkin tidak nanti (tingkat tambalan, skema, indeks, jumlah baris, dll.)...
Contoh yang berhasil
Ini mungkin gagal karena Anda tidak tahu urutan hal-hal yang dievaluasi
SELECT foo From MyTable WHERE ISNUMERIC (foo) = 1 AND CAST(foo AS int) > 100
Dan ini mungkin juga gagal karena
SELECT foo
FROM
(SELECT foo From MyTable WHERE ISNUMERIC (foo) = 1) bar
WHERE
CAST(foo AS int) > 100
Namun, ini tidak di SQL Server 2000. Permintaan dalam dievaluasi dan dikumpulkan:
SELECT foo
FROM
(SELECT TOP 100 PERCENT foo From MyTable WHERE ISNUMERIC (foo) = 1 ORDER BY foo) bar
WHERE
CAST(foo AS int) > 100
Catatan, ini masih berfungsi di SQL Server 2005
SELECT TOP 2000000000 ... ORDER BY...