Я пытаюсь найти все изображения, которые не начинаются с магического числа 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
Изображение типа данных аргумента недопустимо для аргумента 2 функции patindex.
Как правильно найти записи, которые не соответствуют магическому числу ff d8 ff e0
?
UPDATE
Вот ссылка , чтобы проверить любые ваши предложения.
В конце концов решение Росса работало с некоторыми изменениями в запросе.
SELECT [cpclid]
FROM [cp]
where convert(varchar(max), cast(cpphoto as varbinary(max))) not like convert(varchar(max), 0xFFD8FFE0 ) + '%'
Я нашел еще лучшее решение, см. Мой ответ.