1

私は2つのMySQLテーブルを持っています:人とつながり

人からすべての列を選択し、接続テーブルにある接続の数もカウントしたいと思います。

--------------------   ----------------------
| People           |   | Connections        |
--------------------   ----------------------
| person_id | name |   | cnt_id | person_id |
--------------------   ----------------------

人からすべてを選択し、その人のperson_idが2番目のテーブルに表示される回数を選択したいと思います。

私はそれを理解しようとしてきましたが、理解できません。うまくいけば、皆さんがお役に立てば幸いです。

ありがとう!

4

2 に答える 2

2

接続のない人がいる場合、これによりカウントがゼロの行が表示されます。

SELECT
    People.person_id,
    People.name,
    COUNT(Connections.person_id) AS number_of_connections
FROM People
LEFT JOIN Connections
ON People.person_id = Connections.person_id 
GROUP BY People.person_id
于 2012-05-04T18:30:40.437 に答える
1

これを試して

SELECT name,count(Connection.person_id) as cnt FROM 
      People LEFT JOIN Connection ON People.person_id = Connection.person_id 
      GROUP BY Connection.person_id
于 2012-05-04T18:27:34.743 に答える