查询每月得分其中有一个User表和一个积分表Score.我要查出当月的前十名的姓名和所对应的积分

解决方案 »

  1.   


    至少给个Score的表结构吧。
    select Top 10 * from Score where  datediff(m,getdate(),ScorceTime)=0 order by  ScoreValue desc
      

  2.   

    select top(10)*
    from
    (
    select u.userName,s.score
    from User u,Score s
    where u.UserID=s.UserID
    order by s.score
    )as tab_1
      

  3.   

    改order by s.score desc
      

  4.   

    楼主没给表结构我就自己随便建了一个,实现如下:create  table [User]
    (
    [uid] int identity(1,1) primary key not null,
    [uname] varchar(10) not null
    )
    go
    create table Score
    (
    [uid] int not null foreign key references [User]([uid]),
    [score] int not null
    )
    go
    insert into [User] values('张1')
    insert into [User] values('张2')
    insert into [User] values('张3')
    insert into [User] values('张4')
    insert into [User] values('张5')
    insert into [User] values('张6')
    insert into [User] values('张7')
    insert into [User] values('张8')
    insert into [User] values('张9')
    insert into [User] values('张10')
    insert into [User] values('张11')
    go
    insert into score values(1,18)
    insert into score values(2,344)
    insert into score values(3,45)
    insert into score values(4,65)
    insert into score values(5,85)
    insert into score values(6,44)
    insert into score values(7,30)
    insert into score values(8,26)
    insert into score values(9,77)
    insert into score values(10,18)
    insert into score values(11,8)
    --前十名的姓名和所对应的积分 
    select * from [User]
    select * from [Score]SELECT TOP 10 U.[uname],S.[Score] FROM [User] as U
    INNER JOIN [Score] as S
    ON U.uid = S.uid
    ORDER BY S.[Score] DESC
      

  5.   

    select top(10)* 
    from 

    select u.userName,s.score 
    from User u,Score s 
    where u.UserID=s.UserID 
    order by s.score 
    )as tab_1