统计2008年1月份销售量最好的3天所销售的书籍信息,包括:书名、作者、出版社、销售数量、销售日期。

解决方案 »

  1.   

    BOOKINFO表有书名,作者,出版商ID
    PUBLISHER表有出版商名字,出版商ID
    sales表有销售数量,销售日期,出版商ID
      

  2.   


    提问时应该 把具体的表结构 用sql 列出,
    写出你最终想要的效果,
    不然大家 帮你解决的时候也很伤脑筋。
      

  3.   

    select * from sales a left join publisher b on a.出版商ID=b. 出版商ID
    left join bookinfo c on b.出版商ID=c.出版商ID
    where a.销售日期 in
    ( select top 3 销售日期 from sales where year(销售日期)=2008
    and MONTH(销售日期)=1 order by sum(销售数量) desc) 
      

  4.   


    --假设日期格式yyyy-MM-ddselect *from BOOKINFO a join PUBLISHER b on a.出版商ID=b.出版商ID
    join sales c on c.出版商ID=b.出版商ID
    where sales 
    in(
    select 销售日期 from(
    select top 3 销售日期,sum(销售数量) 销售数量 from sales where substring(销售日期,1,7)='2008-01'
    group by 销售日期 order by 销售数量 desc ) as t)
      

  5.   


    USE BOOKSHOP 
    GO
    SELECT BOOKNAME,AUTHOR,PUBLISHERID,QUANTITY,SALESDATE
    FROM BOOKINFO JOIN SALES ON (BOOKINFO.BOOKID=SALES.BOOKID)
    WHERE SALESDATE IN
    (
    SELECT TOP 3 SALESDATE
    FROM SALES 
    WHERE YEAR(SALESDATE)='2008' AND MONTH(SALESDATE)='01' 
    ORDER BY SUM(QUANTITY)
    GROUP BY SALESDATE
    );
    以上是我的代码,报错是“消息 156,级别 15,状态 1,第 9 行
    关键字 'GROUP' 附近有语法错误。”请指导
      

  6.   


    USE BOOKSHOP  
    GO
    SELECT BOOKNAME,AUTHOR,PUBLISHERID,QUANTITY,SALESDATE
    FROM BOOKINFO JOIN SALES ON (BOOKINFO.BOOKID=SALES.BOOKID)
    WHERE SALESDATE IN
    (
    SELECT TOP 3 SALESDATE
    FROM SALES  
    WHERE YEAR(SALESDATE)='2008' AND MONTH(SALESDATE)='01'  
    ORDER BY SUM(QUANTITY)
    GROUP BY SALESDATE
    );
    --ps
    以上是我的代码,报错是“消息 156,级别 15,状态 1,第 9 行
    关键字 'GROUP' 附近有语法错误。”请指导