两张表。
A表中有科目名称,B表中有成绩,时间等。现要做练习分数的查询。每次练习都会记录一次得分,如何能查询出当天每人练习时最大的分数?

解决方案 »

  1.   

    SELECT 科目,MAX(B.成绩)AS 成绩,CONVERT(VARCHAR(10),TIME,120)AS TIME 
    FROM A JOIN B ON A.科目=B.科目GROUP BY 科目,CONVERT(VARCHAR(10),TIME,120)
      

  2.   

    select 
       科目名称,max(b.成绩),convert(varchar(10),时间,120) as 时间
    from 
       tb a,tb b
    where 
       a.科目名称=b.科目名称
    group by 
       科目名称,convert(varchar(10),时间,120)
      

  3.   


    SELECT 科目,MAX(B.成绩)AS 成绩,CONVERT(VARCHAR(10),TIME,120) AS TIME 
    FROM A JOIN B ON A.科目=B.科目
    GROUP BY 科目,CONVERT(VARCHAR(10),TIME,120)
      

  4.   

    A表:学生ID,学生name
    B表:科目ID,科目name
    C表:学生ID,科目ID,成绩,时间
    --查询:
    select a.学生name,b.科目name,max(成绩) from A表 a,B表 b,C表 c where datediff(d,c.时间,getdate())=0 and a.学生ID=c.学生ID and b.科目ID=c.科目ID group by c.学生ID,c,科目ID
      

  5.   

    max(c.成绩)
      

  6.   

    顶个!
    学习convert(varchar(10),[time],120)
    20
      

  7.   

    SELECT B.人员 AS 人员,A.科目 AS 科目,MAX(B.成绩)AS 成绩,CONVERT(VARCHAR(10),B.时间,120)AS 时间
    FROM A A JOIN B B ON A.科目id=B.科目id
    WHERE CONVERT(VARCHAR(10),B.时间,120) = CONVERT(VARCHAR(10),GETDATE(),120)
    GROUP BY B.人员,A.科目,CONVERT(VARCHAR(10),B.时间,120)
      

  8.   


    SELECT B.人员 AS 人员,A.科目 AS 科目,MAX(B.成绩)AS 成绩,CONVERT(VARCHAR(10),B.时间,120)AS 时间
    FROM A A JOIN B B ON A.科目id=B.科目id
    WHERE CONVERT(VARCHAR(10),B.时间,120) = CONVERT(VARCHAR(10),GETDATE(),120)
    GROUP BY B.人员,A.科目,CONVERT(VARCHAR(10),B.时间,120)
      

  9.   


    只能按照LZ的意思。。如果用科目名称作为关联字段select 表B.姓名,A.科目名称,max(表B.成绩) from 表A,表B 
    where A.科目名称=B.科目名称 and B.时间='你要的时间' group by 表B.姓名,A.科目名称
      

  10.   

    有重复的去下重就行了吧? 你用数据试下这个SELECT distinct B.人员 AS 人员,A.科目 AS 科目,MAX(B.成绩)AS 成绩,CONVERT(VARCHAR(10),B.时间,120)AS 时间
    FROM A A JOIN B B ON A.科目id=B.科目id
    WHERE CONVERT(VARCHAR(10),B.时间,120) = CONVERT(VARCHAR(10),GETDATE(),120)
    GROUP BY B.人员,A.科目,CONVERT(VARCHAR(10),B.时间,120)
      

  11.   

    select 
       科目名称,max(b.成绩),convert(varchar(10),时间,120) as 时间
    from 
       tb a,tb b
    where 
       a.科目名称=b.科目名称
    group by 
       科目名称,convert(varchar(10),时间,120)
      

  12.   


    至于CONVERT这个函数到联机丛书里面仔细看看原理了
    答案都出来了……