高度なSQLのサブクエリ

:サブクエリの作成:

  [クエリの学生、「張漢」クラス番号、および学生のテーブル番号、名前、およびクラスの数の学生のと同じ、「張漢」クラス番号をチェックしてください

  1)studentinfoからのClassIDを選択する場所studentname =「張漢」; //クエリの学生、「張漢」クラス番号

          //クラスの学生IDの学生と同じテーブルを照会;のClassIDは=(studentname =「張漢は」studentinfoからのClassIDを選択)studentinfoからID、名前、のClassIDを選択

       studentinfo aから2)を選択a.studentname

   インナーは、試験Bに参加します

   a.id = b.studentidに

   インナーは、対象Cに参加します

   c.id = b.subjectidに

   ここc.subjectname =「Cベースのソフトウェアプログラミング言語の理解」とb.score = 90。

2:使用UPDATEでのサブクエリ、DELETE、INSERT文

  1)UPDATE

      UPDATEスコア= 55の//すべてのセットの試験の結果が55に修正します

      どこstudentid =(// 55のコンディションスコアを変更

      studentnameは= "章涵" studentinfoからIDを選択します

      そしてsubjectid =(

      「Cプログラミング言語理解ソフトウェアに基づいて、」サブジェクト名=被験者からIDを選択

      ))

   2)DELETE

      studentid =(試験からDELETE

      studentnameは= "章涵")studentinfoからIDを選択します。

    3)INSERT

      INSERTテーブル名は、テーブルのフィールドリストを選択します

3:高度なサブクエリ

  1)IN / NOT IN 

    どこIDがstudentinfoからa.studentnameを選択

    (90の学生数のスコア= 90 //クエリスコア試験からstudentidを選択

    そして、subjectid =

    )//クエリコースコード「Cプログラミング言語理解のソフトウェアに基づいて」(「Cプログラミング言語理解のソフトウェアに基づいて、」サブジェクト名=被験者からsubjectidを選択)

    どこID NOT IN studentinfoからa.studentnameを選択

    (スコア= 90試験からstudentidを選択

    そして、subjectid = 

    (「Cプログラミング言語理解のソフトウェアに基づいて、」サブジェクト名=被験者からsubjectidを選択))//クエリでは、「Cプログラミング言語理解のソフトウェアに基づいて」、参加しませんでした

  2)EXISTS / EXISTS、NOT

    studentid、subjectid = 2とが存在するが、(試験場所試験<60からstudentidを選択)試験から試験選択; IDの//最初のチェック失敗グレード、返された少なくとも一つの行、クエリが実行された場合に表識別subjectid = 2の結果をとパフォーマンス情報

    IDの//最初のチェック失敗グレード、ノーリターン値場合、クエリ、選択studentid、subjectid = 2としないが存在する試験からの試験は、(試験試験<60からstudentidを選択します)

      結果表のsubjectid = idとグレード情報2

  3)ALL、ANY、SOME

    選択*スコア> //クエリーサブジェクトは、すべての生徒のテストの点数は、このコースの1番ALL(= 1 subjectid試験から選択スコア)が大きな情報であり、試験から

    スコア> ANYは、(ここで、subjectid = 1試験からのスコアを選択)//大の学生のテストの点数のいずれかの情報を持っている口座番号を照会試験から選択*

    情報を持っているスコアが> //口座番号を照会SOME(subjectid = 1の試験から選択スコア)が大きい生徒のテストの点数のいずれかであるところの試験から選択*

 

      

おすすめ

転載: www.cnblogs.com/W19990605/p/11568582.html