相关疑难解决方法(0)

字符串.NET和T-SQL之间的比较差异?

在我编写的测试用例中,字符串比较似乎在SQL Server/.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));
Run Code Online (Sandbox Code Playgroud)

将输出:

-1
1
Run Code Online (Sandbox Code Playgroud)

这个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';
Run Code Online (Sandbox Code Playgroud)

将输出:

Less Than
Run Code Online (Sandbox Code Playgroud)

为什么不同?

c# sql sql-server string comparison

12
推荐指数
2
解决办法
4020
查看次数

标签 统计

c# ×1

comparison ×1

sql ×1

sql-server ×1

string ×1