私はこれがどのように行われるのかについてちょっと混乱しています。次の値を持つデータベース テーブルがあります。
| id | file_type | code | position |
-------------------------------------
| 1 | Order | SO | 1 |
| 2 | Order | 1-SO | 7 |
| 3 | Order | 1_SO | 7 |
ここで、ファイル名の位置とファイル タイプを取得したいので、次のクエリを考え出します。
SET @FileName = '1-SO1234567890.pdf'
SELECT *
FROM tbl_FileTypes
WHERE CHARINDEX(code,@FileName)> 0
悲しいことに、ここでは 2 つの結果が得られます。「1-SO」の結果のデータのみが必要です。
| id | file_type | code | position |
-------------------------------------
| 1 | Order | SO | 1 |
| 2 | Order | 1-SO | 7 |
私のWHERE句がこれを引き起こすと信じています。希望する結果を得るために、より良い方法はありますか?
事前にどうもありがとうございました。