Být vámi, preferoval bych porovnávání deskriptorů v kódu spíše než v SQL. SQL na to není určeno. Udělal bych následující:-
1. Pre-load N descriptors from SQL onto memory.
2. Compare distances to query descriptor, descriptor by descriptor.
3. If distance<threshold, push to possiblematches.
4. When you reach N/2 descriptors, push the next N.
5. Compare all matches, choose the best one or the best D descriptors, as per your requirement.
K tomu bych však raději použil vestavěnou třídu FileStorage OpenCV, která poskytuje I/O pro soubory XML a YAML; řeší bolest hlavy z ruční analýzy hodnot deskriptoru.