我有一张如下所示的表格

SalesOrderNo
------------
1
2
D1
D2
D11
D12
D16
D20
D21

我想搜索并找到所有大于 D16 的销售订单号
这是我试过的
Select SalesOrderNo From tbl_Sales Where SalesOrderNo > 'D16' and  SalesOrderNo LIKE 'D%'

这就是我得到的
D2
D20
D21

Bt The Desird Out Put 是
D20
D21

最佳答案

使用 RIGHT 函数找到右边部分的整数。
查询

select SalesOrderNo from tbl_sales
where SalesOrderNo LIKE 'D%'
and cast(right(SalesOrderNo, len(SalesOrderNo) - 1) as int) > 16;
Demo

关于sql-server - 如何找到大于字母数字的数字,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37826664/

10-13 00:52