私はそれを自己参照するテーブルを持っています(招待する)。私が各patient_profileが招待されたpatient_profilesの数を取得したいというコラムinvited_by_id
があります。これどうやってするの?別のSELECT文または結合を使用する必要がありますか?同じテーブルの異なるカラムのSQLカウントの合計
私はカウント(SELECT * WHERE p.id = invited_by_id)のようになりますが、どこに置くのかは分かりません。
SELECT
host.id
, host.first_name
, host.last_name
, count(invitee.invited_by_id) as invited_count
FROM patient_profiles AS host
JOIN patient_profiles AS invitee ON invitee.invited_by_id = host.id
GROUP BY host.id, host.first_name, host.last_name
アイデアは(host
と上記invitee
異なる別名の下でそれ自体にテーブルを結合するためにある:表は自己参照を持っているとき、あなたは自己結合とそれを照会することができ
SELECT p.first_name,
FROM patient_profiles AS p
ことを行うために
JOIN
を使用することができますしてください** [EDIT] **あなたの質問といくつかの[サンプルデータ]を追加します(http://plaintexttools.github.io/plain- text-table /)と、そのデータに基づく予想される出力。 [**フォーマットされたテキスト**](http://stackoverflow.com/help/formatting)、** **スクリーンショットはありません**(http://meta.stackoverflow.com/questions/285551/why-may -i-not-upload-images-of-code-on-so-asking-a-question/285557#285557)。 ** [編集] **あなたの質問 - コメントを投稿するコードや追加情報はありません**。 –