Напротив HEX() в SQLite?
У меня есть этот простой запрос, который возвращает кучу указателей в виде шестнадцатеричных строк:
SELECT HEX(guid) FROM table;
Один из них, например, 43F4124307108902B7A919F4D4D0770D
. Тогда представьте, что я хочу получить запись с этим guid, поэтому я пишу такой запрос:
SELECT * FROM table WHERE guid = '43F4124307108902B7A919F4D4D0770D';
Конечно, это не сработает, так как строка напрямую интерпретируется как blob и не конвертируется в это шестнадцатеричное значение. Я посмотрел здесь, но не смог найти ничего похожего на метод, который принимает шестнадцатеричную строку и преобразует ее в blob.
Ответы
Ответ 1
При написании вопроса я нашел ответ. Я просто должен был добавить X перед строкой. Вот так:
SELECT * FROM table WHERE guid = X'43F4124307108902B7A919F4D4D0770D';
Я решил, что я должен поставить вопрос в любом случае, так как ответы на "похожие вопросы" на это не отвечают. То, что я искал, не было функцией, но буквально, и когда я понял это, я быстро нашел ответ здесь.