Select 范围在 SQL

Select range in SQL

我有一个 sql 数据库,其中包含 InvoiceNumber 列

现在我需要select两个数字之间的范围,但我不知道发生了什么。

我试过“Between”和“<=,>=”语句,但结果是一样的。

Table

My query

例如: 如果我需要“13000”和“13020”之间的范围并且有数字“1301” 它出现在结果中。

为此,您需要在 where 子句中包含您的值。

我认为这是因为您的 InvoiceNumber 是一个 varchar。正如@Nathan_Sav 提到的,您需要将其转换为类似的东西,例如 bigint。

select * from SalesInvoice where convert(bigint, InvoiceNumber) >= 13000 and convert(bigint, InvoiceNumber) <= 13020 and Status = 'True'