Sondaki boşluklar açıklandı :
SQL Server, dizelerin boşluklarla nasıl karşılaştırılacağı konusunda ANSI / ISO SQL-92 spesifikasyonunu (Bölüm 8.2, Genel kurallar # 3) takip eder. ANSI standardı, karşılaştırmalarda kullanılan karakter dizeleri için dolgulama gerektirir, böylece uzunlukları karşılaştırmadan önce eşleşir. Dolgu, WHERE ve HAVING yan tümcesinin tahminlerini ve diğer Transact-SQL dizesi karşılaştırmalarını doğrudan etkiler. Örneğin, Transact-SQL 'abc' ve 'abc' dizelerini çoğu karşılaştırma işlemi için eşdeğer kabul eder.
Bu kuralın tek istisnası GİBİ yüklemidir. LIKE yüklem ifadesinin sağ tarafında bir boşluk içeren bir değer olduğunda, SQL Server karşılaştırma yapılmadan önce iki değeri aynı uzunlukta doldurmaz. LIKE yükleminin amacı, tanım gereği, basit dize eşitliği testlerinden ziyade desen aramalarını kolaylaştırmak olduğundan, bu, daha önce bahsedilen ANSI SQL-92 spesifikasyonunun bölümünü ihlal etmez.
Yukarıda belirtilen tüm vakaların iyi bilinen bir örneği:
DECLARE @a VARCHAR(10)
DECLARE @b varchar(10)
SET @a = '1'
SET @b = '1 ' --with trailing blank
SELECT 1
WHERE
@a = @b
AND @a NOT LIKE @b
AND @b LIKE @a
İşte sondaki boşluklar ve LIKE
madde hakkında daha fazla ayrıntı .