2

PHP と MySQL をどのようにマッチメイキングできるか考えていますが、見つかりません。

たとえば、mysql ユーザー テーブルがあり、ユーザーがプロファイルを設定し、パーセンテージでプロファイルを照合します。

単純な mysql テーブル:

CREATE TABLE IF NOT EXISTS `users` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `username` varchar(255) NOT NULL DEFAULT '',
  `password` varchar(255) NOT NULL DEFAULT '',
  `email` varchar(255) NOT NULL DEFAULT '',
  `gender` enum('M','F') NOT NULL DEFAULT 'M',
  `answer1` enum('Y','N') NOT NULL DEFAULT 'Y',
  `answer2` enum('Y','N') NOT NULL DEFAULT 'Y',
  `answer3` enum('Y','N') NOT NULL DEFAULT 'Y',
  `answer4` enum('Y','N') NOT NULL DEFAULT 'Y',
  `answer5` enum('Y','N') NOT NULL DEFAULT 'Y',
  `answer6` enum('Y','N') NOT NULL DEFAULT 'Y',
  `answer7` enum('Y','N') NOT NULL DEFAULT 'Y',
  `answer8` enum('Y','N') NOT NULL DEFAULT 'Y',
  `answer9` enum('Y','N') NOT NULL DEFAULT 'Y',
  `answer10` enum('Y','N') NOT NULL DEFAULT 'Y',
  PRIMARY KEY (`id`),
  UNIQUE KEY `username` (`username`),
  UNIQUE KEY `email` (`email`),
  KEY `gender` (`gender`)
) ENGINE=MyISAM DEFAULT CHARSET=latin5 AUTO_INCREMENT=1 ;

そして私たちの行:

INSERT INTO `users` (`id`, `username`, `password`, `email`, `gender`, `answer1`, `answer2`, `answer3`, `answer4`, `answer5`, `answer6`, `answer7`, `answer8`, `answer9`, `answer10`) VALUES
(1, 'maleuser1', '123456', 'male1@male1.com', 'M', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'Y', 'N', 'Y'),
(2, 'maleuser2', '123456', 'male2@male2.com', 'M', 'Y', 'Y', 'N', 'N', 'N', 'Y', 'Y', 'Y', 'N', 'Y'),
(3, 'femaleuser1', '123456', 'female1@female1.com', 'F', 'Y', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'Y', 'N', 'Y'),
(4, 'femaleuser2', '123456', 'female2@female2.com', 'F', 'Y', 'Y', 'Y', 'N', 'Y', 'N', 'Y', 'N', 'N', 'Y');

2 人の男性ユーザーと 2 人の女性ユーザー (通常は数千人) がいることがわかります。私は、男性のプロファイルに最も一致する女性のプロファイルをパーセンテージで検索したいと考えています。

たとえば、次のクエリを実行します。

select username, blabla as percentage 
from users where gender = 'F' 
and ("here best matchmaking codes") 
and we show users; femaleuser1 and you matching %85.

そして、パーセンテージ %70 より大きいマッチングのみを表示します。

だから私はそれについて話しているが、私は解決できない。

4

1 に答える 1

0

基本的にリンゴとオレンジを比較することはできません。割り当てを探し、ワーカーとジョブを最大化できます。問題の説明では、女性と男性のペアを最大化します。ハンガリアン アルゴリズムまたはエドモンズ v ブロッサム アルゴリズムを探します。

于 2012-10-28T04:05:37.353 に答える