SQL server - 查找以特定值开头并以值结尾的字符串

时间:2018-01-12 12:38:36

标签: sql-server-2008

我正在寻找一个可以搜索特定列的代码,该代码始终以值(ukinvoice)开头,并以大于00030的数值结束 例如ukinvoice1245345.inv.1245788945.3.00030

1 个答案:

答案 0 :(得分:0)

使用'like'运算符和%通配符搜索字符串。 将字符串的最后一部分转换为整数并使用数字。

SELECT *  
FROM TABLE_NAME
WHERE COLUMN_NAME like 'prefix%'
  AND CAST(SUBSTRING(COLUMN_NAME, (LENGTH(COLUMN_NAME) - 4) , 5) AS INT) > 30;

写作:

  • 搜索具有正确前缀的所有字符串

  • 搜索最后一个前缀>>转换为数字>>确保该值大于您想要的值

备注:MySQL使用CONVERT函数,而不是CAST

祝你好运!