Me deparei com um comportamento interessante no SQL Server (observado em 2005 e 2012) hoje que esperava que alguém pudesse explicar.
Uma consulta fazendo uma comparação usando =
um campo NVARCHAR ignorou o espaço à direita na string (ou cortou automaticamente o valor antes da comparação), mas a mesma consulta usando o like
operador não ignorou o espaço. O agrupamento usado é Latin1_General_CI_AS em 2012.
Considere este SQL Fiddle: http://sqlfiddle.com/#!6/72262/4
Observe que o like
operador não retorna um resultado para a string de espaço à direita, mas o =
operador retorna. Por que é isso?
Pontos de bônus: não consigo replicar isso em um campo VARCHAR, pensei que um espaço seria tratado da mesma forma em ambos os tipos de dados - isso é verdade?