私はSqlを初めて使用しました。外部選択ステートメントで選択されていないサブクエリ内の追加テーブルを使用した自己結合
私は理論的なソーシャルネットワークから2つのテーブルを持っています。 1つは「高校生」、1つは「好き」という名前です。 「高校生」にはID(PK)、名前、グレードなどの情報がありますが、「好き」にはid1とid2があり、高校生のIDが「好き」でid2が好きです。好きは必ずしも相互に関係しているわけではありませ
質問:2歳以上の学年を好む生徒は、その生徒の名前と学年と、好きな生徒の名前と学年を返してください。
この:
select h1.name, h1.grade, h2.name, h2.grade
from highschooler h1 inner join highschooler h2
where h1.id in (select id1 from likes where h1.id=id1 and id1<>id2 and h1.grade>h2.grade+2);
は正しい結果を返していません。実際、正しい結果はこのクエリから得られた結果でさえありません。私はまだここで役に立つと思う "参加する"の周りに私の頭を包み込むことを試みているが、私はそれが自己参加の仕組みを知らない。
私は答えを知りたいと思っていますが、これ以上のものは何もありません。今後このようなことをする方法を知りたいのです。自己結合の例は単なる自己結合を実証するだけであり、何も複雑ではありません。
ご協力いただければ幸いです。
Psがこれは
私はポストした後もそれを理解することができましたが、私のものは本当に似ています!どうもありがとうございます。 –