Строка Сравнение различий между. NET и T-SQL?

В написанном мною тестовом примере сравнение строк не работает одинаково между SQL-сервером и .NET CLR.

Этот код C #:

string lesser =  "SR2-A1-10-90";
string greater = "SR2-A1-100-10";

Debug.WriteLine(string.Compare("A","B"));
Debug.WriteLine(string.Compare(lesser, greater));

выведет:

-1
1

Этот код SQL Server:

declare @lesser varchar(20);
declare @greater varchar(20);

set @lesser =  'SR2-A1-10-90';
set @greater = 'SR2-A1-100-10';

IF @lesser < @greater
    SELECT 'Less Than';
ELSE
    SELECT 'Greater than';

выведет:

Less Than

Почему разница?

12
задан Martin Smith 28 September 2010 в 07:30
поделиться