注册 登录
编程论坛 SQL Server论坛

求助!SQL查询编程!!!

fangfeixiang 发布于 2009-11-22 18:06, 670 次点击
BEGIN
    DECLARE @s int
    BEGIN
        SELECT @s=COUNT(*) FROM book
    END
    BEGIN
        SELECT press AS '出版社',CAST(ROUND(COUNT(*)*1.0*100/@s,1) AS DECIMAL(3,1)) AS '出版社的图书百分比' FROM book
GROUP  BY press
    END
END

只有本站会员才能查看附件,请 登录


用上面这个边做下面这道题:对各出版社的图书比例情况进行分析。大于50%的为很高,30%到50%的为较高,10%到30%的为一般,10%以下的为较低。  请问这道题的程序怎么编???
4 回复
#2
uubird2009-11-23 20:32
BEGIN
    DECLARE @s int
    BEGIN
        SELECT @s=COUNT(*) FROM book
    END
    BEGIN
        SELECT press AS '出版社',
           case
             when CAST(ROUND(COUNT(*)*1.0*100/@s,1) AS DECIMAL(3,1)) >50 then '很高'
             when CAST(ROUND(COUNT(*)*1.0*100/@s,1) AS DECIMAL(3,1)) >=30 then '较高'
             when CAST(ROUND(COUNT(*)*1.0*100/@s,1) AS DECIMAL(3,1)) >=10 then '一般'
             else '较低'
             end
         AS '出版社的图书百分比'
                    FROM book
GROUP  BY press
    END
END
#3
gubin1232009-11-24 18:46
BEGIN
    DECLARE @s int
    BEGIN
        SELECT @s=COUNT(*) FROM book
    END
    BEGIN
        SELECT press AS '出版社',
           case
             when CAST(ROUND(COUNT(*)*1.0*100/@s,1) AS DECIMAL(3,1)) >50 then '很高'
             when CAST(ROUND(COUNT(*)*1.0*100/@s,1) AS DECIMAL(3,1)) >=30 then '较高'
             when CAST(ROUND(COUNT(*)*1.0*100/@s,1) AS DECIMAL(3,1)) >=10 then '一般'
             else '较低'
             end
         AS '出版社的图书百分比'
                    FROM book
GROUP  BY press
    END
END
#4
gubin1232009-11-24 18:51
BEGIN
    DECLARE @s int
    BEGIN
        SELECT @s=COUNT(*) FROM book
    END
    BEGIN
        SELECT press AS '出版社',
           case
             when CAST(ROUND(COUNT(*)*1.0*100/@s,1) AS DECIMAL(3,1)) >50 then '很高'
             when CAST(ROUND(COUNT(*)*1.0*100/@s,1) AS DECIMAL(3,1)) >=30 then '较高'
             when CAST(ROUND(COUNT(*)*1.0*100/@s,1) AS DECIMAL(3,1)) >=10 then '一般'
             else '较低'
             end
         AS '出版社的图书百分比'
                    FROM book
GROUP  BY press
    END
END
#5
uubird2009-11-24 19:48
回复 4楼 gubin123
老兄,怎么复制我的两遍是什么意思啊?
是不是我那里错了
1