table(id, name, typem ,color)
table
id name type color
1 r 2 1
2 k 4 2
3 l 1 2
4 m 8 1
5 d 4 2
6 k 1 2
7 e 4 1
8 l 1 2
9 k 1 4
Мне нужно вывести строки максимально похожие на 3ю строку но при этом этих похожих строк должно быть не мение 5
id name type color
3 l 1 2
Пытаюсь сделать так:
SELECT id FROM `table` WHERE (name = l OR type = 1 OR color = 2) AND id!=3 LIMIT 0, 5;
id name type color
2 k 4 2
5 d 4 2
6 k 1 2
8 l 1 2
9 k 1 4
Получаю вот такой результат, по сути все выведенные строки имеют схожести с 3тей строкой но отсортированы по id(вернее вообще не отсортированы)
Мне нужно сделать так что бы первой строкой выводилось максимально схожий результат, тоесть 8 строка затем 6 затем 9
ORDER BY name не поможет так как он будет сортировать по алфавиту а не по сходству с l
ВНИМАНИЕ ВОПРОС!
как мне реализовать сортировку сходству (по маске) ?