Я создаю приложение, которое рекомендует людям других людей, исходя из того, как часто они были на одном месте.
Итак, для данного человека A (тот, который вы хотите дать предложение), у меня есть таблица всех остальных людей и количество времени, которое они были на месте. то есть, я получаю это:Как сортировать по близости?
idPerson | idPlace | nbTimesPersonWent | nbTimesPersonAWent
10 | 1 | 3 | 10
11 | 2 | 1 | 22
12 | 1 | 11 | 10
13 | 3 | 8 | 2
Что я борюсь с находит, какой из этих idPerson
является «лучшим» лицо рекомендовать А.
Есть ли способ (предпочтительно чистый SQL), сортировать эту таблицу с "ближе" значение nbTimesPersonWent
и nbTimesPersonWent
до "менее близких" значений?
У вас есть два столбца с именем nbTimesPersonWent, это предназначено, если да, в чем разница? –
Приятный глаз, я набрал слишком быстро, только что отредактировал свой ответ – Rogue
Немного непонятно, какова цель. Предположим, что место '1' было посещено' 3' раз человеком 'B1' и' 3' раз лицом 'A', т.е. их предпочтение к месту' 1' равно, что может быть выражено '0 = | 3 -3 | 'С другой стороны, предположим, что место' 2' было посещено '100' раз человеком' B2' и '12' раз для человека' A'; их предпочтение к месту '2' отличается, но шансы встретиться были бы потенциально« 12 = мин {100,12} ». Является ли лицо 'B1' или лицо' B2' лучшим совпадением для 'A'? – Codor