1,有一产品报价数据表,表格如下:
 cSpec_Code 报价号
 cSpace_Code 产品号   
 cType_Code 类别号
 cType_name 类别名
 cBrand_Code 品牌号
 cBrand_Name 品牌名
 cNew_Price 新报价
 cDealer_Code 经销商号请写一个SQL语句统计出每个类下,有哪些不同的品牌,且每个品牌下有多少条报价,最终需要类号,类名,品牌号,品牌名,报价条数。2,在一个数据表score中,表示学生的姓名(字段,name)和百分制成绩(字段,result),写一个语句要求输出学生姓名,百分制成绩和5分制成绩(字段,result5),并按百分成绩排倒序。
规则为:
        90-100分为5分。
        70-89分为4分。
        60-69分为3分。
注:result5不是表字段。需要用SQL语句求出。。
3,有两个表,分别为产品表和报价表
产品表包含字段:产品编号,产品名称,产品类型。
报价表包含字段:产品编号,公司编号,上次报价,当前报价。。
说明:每个产品有可能同时有多家公司发布报价。
请通过SQL语句查询出当前所有产品类型为“笔记本”产品的除价排行榜,前十名按降价幅度由高到低排序(降价幅度:上次最低报价与不前最低报价差值)查询结果中显示产品编号,产品名称,降价幅度。

解决方案 »

  1.   

    哈哈
    第二个比较简单,先写第二个
    select [Result],[Name],
    [Result5]=
    (
    case  
    when [Result] between 90 and 100 then 5
    when [Result] between 70 and 89 then 4
    when [Result] between 60 and 69 then 3
    else 0 --判断如果都没有满足的话就设置为0分
    end 
    )
    from score 
    order by Result desc
      

  2.   

    又写 了一个
    都没测试的,不知道有没有理解对楼主的意思select top 10 t2.产品编号,(当前报价-上次报价) AS 降价,t1.产品名称
    from 报价表 t2
    inner join 产品表 t1
    on t1.产品编号=t2.产品编号
    where t1.产品名称='笔记本'
    order by 降价可以先将笔记本的编号查出来 where那里就可以改一下
      

  3.   

    各位大哥能不能顺便说说存储过程的概念或机制啊
    接触了点点数据库,可是没用过存储过程,sqlserver的文档又不是很清楚好象