2017-01-29 4 views
-3

私は助けが必要です。 私は、例えば、下の画像内の1つのように見えるMySQLのテーブルがある場合:彼が言及しているので、私はニール・ホワイトの顧客タイプの「プレミアム」のような人を変更するには、UPDATE文を書くにはどうすればよい列を比較してMYSQLテーブルを更新

Full Name  Customer _ Type Referrer 
Wayne Brown Standard  Neil White 
Neil White Standard  Wayne Brown 
Gordon Smith Standard  Neil White 
Rukky Dick Standard  Neil White 
Dorothy Ann Standard  Tracy Cool 
Tracy Cool Standard  Neil White 
Anthony Josh Standard  Neil White 

を5人以上の人?

私はこのコードを試しましたが、結果が得られません。

Update customers set customer_type = “Premium” where full_name = (select referrer from customers having count(referrer) >= 5) 

ありがとうございます。

+0

、プレーンテキストとしてではなく、読みにくいことができ、画像としてここにコードを投稿してくださいコピー&ペーストすることができないテストコードを助けるかの答えに使用しますスクリーンリーダーを使用するユーザーには敵対的です。質問を編集して、質問の本文にコードを追加することができます。 '{}'ボタンを使ってコードのブロックを整形するか、同じ効果のために4つのスペースをインデントします。 – tadman

+1

あなたは 'COUNT()'(おそらくHAVING)か 'num_rows()'と 'UPDATE'を使います。 –

答えて

0

は、次の操作を実行してください:

UPDATE `your_table` as t1 
    INNER JOIN (select count(*) as `total` 
      from `your_table` as t2 
      where t2.`full_name_customer`= t1.`full_name_customer` 
      group by t2.`referrer` 
    ) as t3 
SET`full_name_customer`='Premium' 
WHERE t3.total >= 5 
関連する問題