Я пытаюсь написать запрос на SQL Server 2012, который будет возвращать столбцы varbinary(max), содержащие указанную последовательность байтов. Я могу сделать это с помощью запроса, который преобразует поле varbinary в varchar и использует LIKE:
SELECT * FROM foo
WHERE CONVERT(varchar(max), myvarbincolumn) LIKE
'%' + CONVERT(varchar(max), 0x626C6168) + '%'
где «0x626C6168» — моя целевая последовательность байтов. К сожалению, это работает только в том случае, если поле не содержит байтов со значением 0 (0x00), а это очень часто встречается в моих данных. Есть ли другой подход, который я могу использовать, который будет работать со значениями, содержащими байты с нулевым значением?