私はSQLを初めて使い、このクエリを開始することさえ問題があります。
SQL:IDのサブセットの以前のすべてのレコードを検索
生徒に「2012」のレコードがある場合は、そのレコードと以前のすべてのレコードをリストします。
簡略化されたデータセット:
ASSIGNMENTS STUDENT_ID BOOK_TITLE TERM
001 MOBY DICK 2009 002 ULYSSES 2009 003 HAMLET 2009 004 1984 2009 005 HAMLET 2009 004 WAR & PEACE 2010 003 THE TRIAL 2010 004 MOBY DICK 2011 001 -NULL---- 2012 004 -NULL---- 2012
結果は、その生徒の前の記録に続いて与えられる用語で登録されたものを記録する必要があります。目標は、現在登録されている学生(書籍のタイトルのNULL値)を見て、すでに読んだ本を割り当てないようにすることです。
STUDENT_ID BOOK_TITLE TERM 001 -NULL---- 2012 001 MOBY DICK 2009 004 -NULL---- 2012 004 MOBY DICK 2011 004 WAR & PEACE 2010 004 1984 2009
すべてのポインタ/開始の指示は非常に高く評価されます!私は 'with'、複数の内部結合を使いこなそうとしましたが、どこにもいません。私はSQLで実際には動作しないif..then構文を考え続けますか?
どのデータベースエンジン(およびバージョン)を使用していますか? – Lamak
Oracle SQL Developer 3.0を使用しています – Kate