フィールドDESCの37桁目に 'OE'の値を持つレコードを選択するにはどうすればよいですか?フィールドの正確な位置に特定の値を持つレコードを選択するにはどうすればよいですか?
私はこの、文
select DESC
from TABLEA
where DESC like '%OE%'
を使用して必要なレコードを見つけることができますしかし、それはまた、DESC内の他の位置に配置OEを持つレコードが返されます。これは不正確な結果を作ります。
私は2005年
フィールドDESCの37桁目に 'OE'の値を持つレコードを選択するにはどうすればよいですか?フィールドの正確な位置に特定の値を持つレコードを選択するにはどうすればよいですか?
私はこの、文
select DESC
from TABLEA
where DESC like '%OE%'
を使用して必要なレコードを見つけることができますしかし、それはまた、DESC内の他の位置に配置OEを持つレコードが返されます。これは不正確な結果を作ります。
私は2005年
select [DESC]
from TABLEA
where substring([desc], 37, 2) = 'OE'
SUBSTRING Function (MSDN Reference) MS SQLを使用しています。あなたは、文字列内の特定の位置で2つの文字をテストしたい場合は
SUBSTRING (value_expression , start_expression , length_expression)
は、その後、あなたはSUBSTRING()
機能を使用することができます。
ありがとう、それは素晴らしい作品です! – mkgiblin
@mkgiblin喜んで助けてください!あなたの解決策であればこれを答えにしてください。 :) –
私はDESCの部分文字列がそれを行うと信じています。http://msdn.microsoft.com/en-us/library/ms187748(v=sql.90).aspx – Dan
DESCはひどい列名です。 ORDER BY句で使用される予約語。 –
@PMV GREAT POINT –