Я столкнулся с небольшой проблемой.Я создаю веб-приложение с фрагментами кода.Пользователи сталкиваются с двумя случайными фрагментами кода, которые помечены одинаково, и они должны выбрать, какой из двух им нравится больше всего, или они могут пропустить (аналогично Facemash, но с фрагментами кода вместо изображений).
Iиметь таблицу с именем CodeSnippets с этими полями:
- Id - идентификатор фрагмента
- Score - Оценка фрагмента
- Некоторые другие не важные столбцы
Оценка - это действительное число.
Мой вопрос: как мне написать запрос, который получает две случайные записи с очень близкими оценками?Проблема в том, что мне нужно заказать трижды: RAND (), Score и RAND () с запасом.
Это то, что у меня уже есть:
SELECT Id, Score, Code FROM CodeSnippets ORDER BY RAND() LIMIT 2
Но это просто выбирает дваслучайные записи, даже если их результаты находятся далеко друг от друга:)
Может ли кто-нибудь указать мне правильное направление?