1

私はMYSQLに不慣れではありませんが、この問題に頭を悩ませることはできません。どんな助けでも大歓迎です!

私のテーブルは例のために単純化されています:

category_table
+ ----- +  
| id |  
+ ----- +  
| 1 |  
| 2 |  
| 3 |  
+ ----- +  
links_table
+ ------ + ------------- + ------------------- +
| id | category_id | リンク|
+ ------ + ------------- + ------------------- +
| 1 | 1 | http://google.com |
| 2 | 2 | http://google.com |
| 3 | 2 | http://google.com |
| 4 | 5 | http://yahoo.com |
| 5 | 1 | http://php.net |
| 6 | 2 | http://php.net |
+ ------ + ------------- + ------------------- +

リンクテーブルには数千の行があり(はい、同じカテゴリに接続されている同じリンク)、リンクがアタッチされているDISTINCTカテゴリの合計を含むDISTINCTリンクを一覧表示するビューテーブルが必要です。したがって、links_tableではIDの2と3は1回だけカウントする必要があります。

したがって、この例では、ビューテーブルは次のようになります。

見る
+ ------------------- + ------------------- +
| sum_of_categories | リンク|
+ ------------------- + ------------------- +
| 2 | http://google.com |
| 1 | http://yahoo.com |
| 2 | http://php.net |
+ ------------------- + ------------------- +

誰か助けてもらえますか?

4

1 に答える 1

4
select link, count( distinct category_id ) sum_of_categories
   from links_table
   group by link
于 2011-04-12T15:30:34.363 に答える