Kami memiliki generator SQL yang memancarkan pernyataan kondisional SQL secara umum untuk bidang tertentu (yang untuk diskusi: kami akan beri label sebagai myField
).
Jika myField
adalah tipe NVARCHAR
, kita bisa melakukan perbandingan dari lapangan mengatakan terhadap string seperti: myField = 'foo'
.
Namun, ini tidak berfungsi untuk bidang tipe NTEXT
. Dengan demikian, kita harus melakukan perbandingan dengan gips: CAST(myField as NVARCHAR(MAX)) = 'foo'
. Ini sebenarnya akan bekerja jika myField
bertipe NVARCHAR
atau NTEXT
.
Apa kinerja yang berhasil dilakukan oleh para pemeran yang disebutkan di atas pada bidang yang sudah bertipe NVARCHAR
? Harapan saya adalah bahwa SQL Server cukup pintar untuk secara dinamis mengenali yang myField
sudah tipe NVARCHAR
(secara efektif mengubah CAST
menjadi no-op).