如何在T-SQL中使用BETWEEN和LIKE

时间:2018-11-14 08:06:34

标签: sql tsql

我对T-SQL有疑问。我尝试约束我的桌子。顺便说一句,我想使用BETWEEN和LIKE命令。我尝试了一下,但是没有用。

 SELECT * FROM
 dbo.GrnStock
 WHERE 
 StockNo BETWEEN LIKE '%823%' AND LIKE '%829%' 

StockNo是NVARCHAR,其值类似于:

T000578
X000825

我该如何解决?

1 个答案:

答案 0 :(得分:1)

如果StockNo是varchar或nvarchar,则可以从中获取数字部分。
然后,您将可以使用BETWEEN比较范围内的数字。

对于像“ T000578”这样的字符串,6位数字在结尾。

然后您可以这样做:

SELECT * 
FROM dbo.GrnStock
WHERE TRY_CAST(RIGHT(StockNo, 6) AS INT) BETWEEN 823 AND 829;

但是对于该范围,可以仅使用LIKE

进行简化
SELECT * 
FROM dbo.GrnStock
WHERE StockNo LIKE '%00082[3-9]';