如何选择在字段的确切位置具有特定值的记录?

时间:2012-02-08 20:49:06

标签: sql sql-server sql-server-2005 tsql

如何在字段DESC的第37位选择值为“OE”的记录?

我可以使用此声明找到所需的记录 -

select DESC
from   TABLEA
where  DESC like '%OE%'

但它也将返回记录,其中OE位于DESC内的其他位置。这会产生不正确的结果。

我正在使用MS SQL 2005.

1 个答案:

答案 0 :(得分:7)

select [DESC]
from   TABLEA
where  substring([desc], 37, 2) = 'OE'

SUBSTRING Function (MSDN Reference)

SUBSTRING ( value_expression , start_expression , length_expression )

如果你想在字符串中的某个位置测试两个字符,那么你可以使用SUBSTRING()函数。