-1

私はまだmysqlに慣れていないので問題があります。それで、これが私がやろうとしていることです。user1user2と数値を含むテーブルがあります

例:

user1 user2 1
user5 user17 1
user44 user33 12
user1 user5 1
user1 user24 1
user5 user666 1

私がやろうとしているのは、最初に最初のユーザーフィールドをリストし、次にその量でソートされたuser2値の量をリストすることです。

上記の例では、結果を次のようにしたいと思います。

user1 3
user5 2
user44 1

user1がuser1フィールドに3回、user 5が2回、user44が1回ある理由。これは基本的に私がコーディングした紹介システムであり、今度は誰が私のサイトにほとんどのユーザーを紹介したかを示したいと思います。user1はリファラーであり、user2はリファラーです。

また、LIMIT 10のように、最大​​10行をリストしたいと思います。

このクエリを実行してphpで出力する方法についての提案はありますか?私はmysqlへの接続部分を行う方法を知っています-私はこれを私が望む方法で正確にエコーする方法がわかりません。

この件であなたの助けをありがとう:)

4

3 に答える 3

1

あなたがこれを望んでいるように聞こえます:

select user1, count(*) Total
from yourtable 
group by user1
order by total desc
limit 0, 10

SQL FiddlewithDemoを参照してください

注:列名は説明から明確ではありませんでした

于 2012-12-30T14:02:05.867 に答える
0

これがあなたの問題の解決策です。

select user1, count(*) as Total
from tablename
group by user1
limit 10;
于 2012-12-30T14:08:19.927 に答える
0

やってみませんか?

SELECT username,count(username)
FROM yourtablename
Group By username
Order by 2 desc
于 2012-12-30T14:28:40.507 に答える