Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Интересный запрос. Помогайте ! (Владимир) 24/07/2010 - 13:16:34



From: Владимир - 24/07/2010 - 13:16:34
Subject:Интересный запрос. Помогайте !
-----------------
Привет, Друзья.

Задача такая. Есть таблица users с анкетами людей.

userID
name (имя)
sex (м,ж)
color (Цвет волос enum 'Светлые','Черные')
lang (знание языков enum 'Английский','Испанский')
user_compareID (фильтр)

1 | Марина | ж | Светлые | Английский | 1
2 | Алекс | м | Черные | Испанский | NULL
3 | Дима | м | Светлые | Английский | NULL
4 | Стас | м | Светлые | Испанский | NULL

Нужно придумать систему для подбора анкет между собой
Создаем другую таблицу users_compare в которой будем хранить фильтры

user_compareID
param (параметр, например пол или цвет волос, т.е. color или lang)
value (значение параметра)
priority (важность параметра)

1 | sex | м | 1
1 | color | Светлые | 0.5
1 | lang | Испанский | 0.2

(т.е. Марина ищет только парня со светлыми волосами и было бы неплохо, чтобы он еще знал испанский)
Результатом должно быть

4 | Стас | м | Светлые | Испанский | NULL (relev=1+0.5+0.2 = 1,7)
3 | Дима | м | Светлые | Английский | NULL (relev=1+0,5+0 = 1,5)
2 | Алекс | м | Черные | Испанский | NULL (relev=1+0+0.2 = 1,2)

Как написать запрос для вывода анкет по степени соответствия ?


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
37302



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |