SQLServer服务器中,给定表StudentExercise,其中字段为StudentCode(nvarchar), ExerciseID(int),Scores(int), ExerciseContent(string),写一条SQL语句列出做了3次以上作业的学生,列出学生代码就可以。 接上一题,SQLServer服务器中,给定表StudentInfo,其字段StudentCode(nvarchar),StudentName(nvarchar),写出一条语句查出对于所有学生号码为10的学生作业分数记录情况,对于没有做作业的学生显示0分,要求显示字段为StudentCode,StudentExercise,Scores.

解决方案 »

  1.   

    select studentcode from StudentExercise group by StudentCode having count(1)>=3
      

  2.   

    select StudentCode from StudentExercise group by StudentCode having count(1)>=3
      

  3.   

    学生号码为10
    学生号码為StudentCode ?
      

  4.   


    StudentExercise写错了    是StudentName
      

  5.   

    select
       b.*,isnull(a.score,0) as score
    from
       StudentInfo a left join StudentExercise b
    on
       a.studentcode=b.studentcode
    where
       a.StudentCode='10'
      

  6.   

    select StudentCode from 
    StudentExercise 
    group by StudentCode 
    having count(1)>=3
      

  7.   

    select a.StudentCode,isnull(b.StudentExercise,'') as StudentExercise,isnull(b.Scores,0) as Scores
    from StudentInfo a
    left join StudentExercise b
    on a.StudentCode = b.StudentCode
    where a.StudentCode = '10'
      

  8.   


    select
       a.*,isnull(b.score,0) as score
    from
       StudentInfo a left join StudentExercise b
    on
       a.studentcode=b.studentcode
    where
       a.StudentCode='10'---修改一下
      

  9.   

    自己改吧,重点就是left join 和isnull用法
      

  10.   

    1、
    SELECT  b.StudentCode,b.StudentName
    FROM StudentExercise  AS a 
    INNER JOIN StudentInfo AS b ON a.StudentCode=b.StudentCode 
    GROUP BY b.StudentCode,b.StudentName
    HAVING COUNT(1)>1
      

  11.   

    2、
    SELECT  
    b.StudentCode,b.StudentName,ISNULL(a.Scores,0)
    FROM StudentExercise  AS a 
    right JOIN StudentInfo AS b ON a.StudentCode=b.StudentCode 
    on a.ExerciseID=10
    猜一個