首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

这样的语句在SQLSERVER,应该如何写

2012-12-14 
这样的语句在SQLSERVER,应该怎么写?select 语文优秀,min(语文) from (select top 15 percent 语文 from

这样的语句在SQLSERVER,应该怎么写?
select '语文优秀',min(语文) from (select top 15 percent 语文 from cj order by 语文 desc)
union all
 select '数学',min(数学) from (select top 15 percent 数学 from cj order by 数学 desc)
union all
 select '英语',min(英语) from (select top 15 percent 英语 from cj order by 英语 desc)
union all
 select '生物',min(生物) from (select top 15 percent 生物 from cj order by 生物 desc)
union all
 select '政治',min(政治) from (select top 15 percent 政治 from cj order by 政治 desc)
union all
 select '历史',min(历史) from (select top 15 percent 历史 from cj order by 历史 desc)
union all
 select '物理',min(物理) from (select top 15 percent 物理 from cj order by 物理 desc)
union all
 select '化学',min(化学) from (select top 15 percent 化学 from cj order by 化学 desc)
UNION ALL 
select '总分',min(总分) from (select top 15 percent 总分 from cj order by 总分 desc)
union all
select '语文良好分',min(语文) from (select top 40 percent 语文 from cj order by 语文 desc)
union all
 select '数学',min(数学) from (select top 40 percent 数学 from cj order by 数学 desc)
union all
 select '英语',min(英语) from (select top 40 percent 英语 from cj order by 英语 desc)
union all
 select '生物',min(生物) from (select top 40 percent 生物 from cj order by 生物 desc)
union all
 select '政治',min(政治) from (select top 40 percent 政治 from cj order by 政治 desc)
union all
 select '历史',min(历史) from (select top 40 percent 历史 from cj order by 历史 desc)
union all
 select '物理',min(物理) from (select top 40 percent 物理 from cj order by 物理 desc)
union all
 select '化学',min(化学) from (select top 40 percent 化学 from cj order by 化学 desc)
UNION ALL 
select '总分',min(总分) from (select top 40 percent 总分 from cj order by 总分 desc)
union all
select '语文及格分',min(语文) from (select top 60 percent 语文 from cj order by 语文 desc)
union all
 select '数学',min(数学) from (select top 60 percent 数学 from cj order by 数学 desc)
union all
 select '英语',min(英语) from (select top 60 percent 英语 from cj order by 英语 desc)
union all
 select '生物',min(生物) from (select top 60 percent 生物 from cj order by 生物 desc)
union all
 select '政治',min(政治) from (select top 60 percent 政治 from cj order by 政治 desc)
union all
 select '历史',min(历史) from (select top 60 percent 历史 from cj order by 历史 desc)


union all
 select '物理',min(物理) from (select top 60 percent 物理 from cj order by 物理 desc)
union all
 select '化学',min(化学) from (select top 60 percent 化学 from cj order by 化学 desc)
UNION ALL select '总分',min(总分) from (select top 60 percent 总分 from cj order by 总分 desc);

以上代码在ACCESS中,可以正常查询。在sqlserver中,应该怎么修改呢?

[最优解释]

SELECT  '语文优秀' [状态],
         MIN(语文)[学科]
 FROM    ( SELECT TOP 15 PERCENT
                     语文
           FROM      cj
           ORDER BY  语文 DESC
         )a
 UNION ALL
 SELECT  '数学' ,
         MIN(数学)
 FROM    ( SELECT TOP 15 PERCENT
                     数学
           FROM      cj
           ORDER BY  数学 DESC
         )b
 UNION ALL
 SELECT  '英语' ,
         MIN(英语)
 FROM    ( SELECT TOP 15 PERCENT
                     英语
           FROM      cj
           ORDER BY  英语 DESC
         )c
 UNION ALL
 SELECT  '生物' ,
         MIN(生物)
 FROM    ( SELECT TOP 15 PERCENT
                     生物
           FROM      cj
           ORDER BY  生物 DESC
         )d
 UNION ALL
 SELECT  '政治' ,
         MIN(政治)
 FROM    ( SELECT TOP 15 PERCENT
                     政治
           FROM      cj
           ORDER BY  政治 DESC
         )e
 UNION ALL
 SELECT  '历史' ,
         MIN(历史)
 FROM    ( SELECT TOP 15 PERCENT


                     历史
           FROM      cj
           ORDER BY  历史 DESC
         )f
 UNION ALL
 SELECT  '物理' ,
         MIN(物理)
 FROM    ( SELECT TOP 15 PERCENT
                     物理
           FROM      cj
           ORDER BY  物理 DESC
         )g
 UNION ALL
 SELECT  '化学' ,
         MIN(化学)
 FROM    ( SELECT TOP 15 PERCENT
                     化学
           FROM      cj
           ORDER BY  化学 DESC
         )h
 UNION ALL
 SELECT  '总分' ,
         MIN(总分)
 FROM    ( SELECT TOP 15 PERCENT
                     总分
           FROM      cj
           ORDER BY  总分 DESC
         )j
 UNION ALL
 SELECT  '语文良好分' ,
         MIN(语文)
 FROM    ( SELECT TOP 40 PERCENT
                     语文
           FROM      cj
           ORDER BY  语文 DESC
         )k
 UNION ALL
 SELECT  '数学' ,
         MIN(数学)
 FROM    ( SELECT TOP 40 PERCENT
                     数学
           FROM      cj
           ORDER BY  数学 DESC
         )l
 UNION ALL
 SELECT  '英语' ,
         MIN(英语)
 FROM    ( SELECT TOP 40 PERCENT
                     英语
           FROM      cj


           ORDER BY  英语 DESC
         )m
 UNION ALL
 SELECT  '生物' ,
         MIN(生物)
 FROM    ( SELECT TOP 40 PERCENT
                     生物
           FROM      cj
           ORDER BY  生物 DESC
         )n
 UNION ALL
 SELECT  '政治' ,
         MIN(政治)
 FROM    ( SELECT TOP 40 PERCENT
                     政治
           FROM      cj
           ORDER BY  政治 DESC
         )o
 UNION ALL
 SELECT  '历史' ,
         MIN(历史)
 FROM    ( SELECT TOP 40 PERCENT
                     历史
           FROM      cj
           ORDER BY  历史 DESC
         )p
 UNION ALL
 SELECT  '物理' ,
         MIN(物理)
 FROM    ( SELECT TOP 40 PERCENT
                     物理
           FROM      cj
           ORDER BY  物理 DESC
         )q
 UNION ALL
 SELECT  '化学' ,
         MIN(化学)
 FROM    ( SELECT TOP 40 PERCENT
                     化学
           FROM      cj
           ORDER BY  化学 DESC
         )r
 UNION ALL
 SELECT  '总分' ,
         MIN(总分)
 FROM    ( SELECT TOP 40 PERCENT
                     总分
           FROM      cj
           ORDER BY  总分 DESC
         )s
 UNION ALL
 SELECT  '语文及格分' ,


         MIN(语文)
 FROM    ( SELECT TOP 60 PERCENT
                     语文
           FROM      cj
           ORDER BY  语文 DESC
         )t
 UNION ALL
 SELECT  '数学' ,
         MIN(数学)
 FROM    ( SELECT TOP 60 PERCENT
                     数学
           FROM      cj
           ORDER BY  数学 DESC
         )u
 UNION ALL
 SELECT  '英语' ,
         MIN(英语)
 FROM    ( SELECT TOP 60 PERCENT
                     英语
           FROM      cj
           ORDER BY  英语 DESC
         )v
 UNION ALL
 SELECT  '生物' ,
         MIN(生物)
 FROM    ( SELECT TOP 60 PERCENT
                     生物
           FROM      cj
           ORDER BY  生物 DESC
         )w
 UNION ALL
 SELECT  '政治' ,
         MIN(政治)
 FROM    ( SELECT TOP 60 PERCENT
                     政治
           FROM      cj
           ORDER BY  政治 DESC
         )y
 UNION ALL
 SELECT  '历史' ,
         MIN(历史)
 FROM    ( SELECT TOP 60 PERCENT
                     历史
           FROM      cj
           ORDER BY  历史 DESC
         )z
 UNION ALL
 SELECT  '物理' ,
         MIN(物理)
 FROM    ( SELECT TOP 60 PERCENT
                     物理


           FROM      cj
           ORDER BY  物理 DESC
         )aa
 UNION ALL
 SELECT  '化学' ,
         MIN(化学)
 FROM    ( SELECT TOP 60 PERCENT
                     化学
           FROM      cj
           ORDER BY  化学 DESC
         )bb
 UNION ALL
 SELECT  '总分' ,
         MIN(总分)
 FROM    ( SELECT TOP 60 PERCENT
                     总分
           FROM      cj
           ORDER BY  总分 DESC
         ) cc

热点排行