マジック ナンバー ff d8 ff e0
(jpg の署名) で始まらないすべての画像を検索しようとしています。MSDNによると、データに対して patindex を使用できるはずです。でも
SELECT TOP 1000 [cpclid]
FROM [cp]
where patindex('FFD8FFE0%', cpphoto) = 0 -- cpphoto is a column type of image
エラーが表示されます
メッセージ 8116、レベル 16、状態 1、行 1 patindex 関数の引数 2 の引数データ型イメージが無効です。
のマジックナンバーに一致しないレコードを見つける正しい方法はff d8 ff e0
?
更新:
これは、あなたが持っている提案をテストするためのリンクです。
I Ross のソリューションは、クエリの内容を微調整することで最終的に機能しました。
SELECT [cpclid]
FROM [cp]
where convert(varchar(max), cast(cpphoto as varbinary(max))) not like convert(varchar(max), 0xFFD8FFE0 ) + '%'
さらに良い解決策を見つけました。私の答えを見てください。