2016-09-15 7 views
0

を結果取得、私は2テーブルにマッチしたフィールドに問題を抱えている、私は疲れて、カウント一致異なる申請フォーム2つのテーブルのMySQL、PHPから</p> <p>私の悪い英語のため申し訳ありません

表1

CREATE TABLE `may` (
    `idKEYWORD` int(11) NOT NULL, 
    `faku` varchar(45) NOT NULL, 
`ipk` varchar(45) NOT NULL, 
`per` varchar(45) NOT NULL, 
`has` varchar(45) NOT NULL, 
`sem` varchar(45) NOT NULL, 
`jur` varchar(45) NOT NULL 
); 

table 2 
CREATE TABLE `matched_may` (
`idmayKEYWORD` int(11) NOT NULL, 
    `namemay` varchar(50) NOT NULL, 
    `req_faku` varchar(50) NOT NULL, 
    `req_jur` varchar(50) NOT NULL, 
    `req_ipk` varchar(50) NOT NULL, 
    `req_perkap` varchar(50) NOT NULL, 
    `req_has` varchar(50) NOT NULL, 
    `req_sem` varchar(50) NOT NULL 

); 

をしたいですこれはPHPのようなものですが、私はたくさんのレコードを持っているので、ini mysqlが必要です。合計一致と使用制限で注文を使いたいです。

if($red->faku == $res->req_faku OR $res->req_faku == '') $tot[] = 1; 
if($red->jur == $res->req_jur OR $res->req_jur == '') $tot[] = 1; 
if($red->ipk >= $res->req_ipk OR $res->req_ipk == '') $tot[] = 1; 
if($red->per >= $res->req_perkap OR $res->req_perkap == 0) $tot[] = 1; 
if($red->has <= $res->req_has OR $res->req_has == 0) $tot[] = 1; 
if($red->sem == $res->req_sem OR $res->req_sem == 0) $tot[] = 1; 

私は6要求

私は私はあなたが何をしたいのか推測している場合は

namemay | matched 
name1 | 4 
name2 | 5 
name3 | 4 
+2

サンプルデータと望ましい結果は、あなたが何をしたいのかを説明するのに不思議です。 –

+0

何?あなたが達成したいことは明確ではありません... sqlはどこですか? PHPコードの残りはどこですか? – Jeff

+0

申し訳ありません私はすでにそれを編集しています – Panjul

答えて

0

ような結果を取得したい申し訳ありませんが、あなたがテーブルを結合する必要があるから、4以上の一致を取得する必要があります。次に、2つのテーブルの列を比較して一致数を加算します。

SELECT namemay, 
    (req_faku = '' OR req_faku = faku) + (req_jur = '' OR req_jur = jur) 
    + (req_ipk = '' OR req_ipk <= ipk) + (req_perkap = 0 OR req_perkap = per) 
    + (req_has = 0 OR req_has >= has) + (req_sem = 0 OR req_sem = sem) AS matched 
FROM may 
JOIN matched_may ON idKEYWORD = idmayKEYWORD 
HAVING matched >= 4 

比較式は、彼らが本当だとき、1を返す0とき偽、あなたが一致した合計の列を取得するために、追加を使用することができます。

+0

のおかげで感謝カウント($トート)を取得します私はそれを試してみます – Panjul

+0

私はそれを使用せずにそれを使用していただきありがとうございますidKeyword = idmayKEYWORD、 idwordで – Panjul

関連する問題