在jsp数据库系统开发手册 中的图书超市的index.jsp中的数据库查询问题
发表在JavaWeb图书答疑 2008-09-12
是否精华
版块置顶:
ResultSet rs_sort=connDB.executeQuery("select * from (select top 10 * from ( select sum(number) as amount,ISBN from tb_Order_detail group by ISBN )as tab order by amount desc) o inner join tb_bookinfo b on o.ISBN=b.ISBN order by o.amount desc");
 该语句是什么意思,能不能详细说明下他的功能如:o inner join , b,o.ISBN
分享到:
精彩评论 1
无语_mrkj
学分:3155 LV11
2008-09-16
沙发
"select * from (select top 10 * from ( select sum(number) as amount,ISBN from tb_Order_detail group by ISBN )as tab order by amount desc) o inner join tb_bookinfo b on o.ISBN=b.ISBN order by o.amount desc"
这是一条SQL语句,用于将销售明细表中的数据按ISBN字段分组并统计销售数量,再应用子查询获取销售数量最高的前10本图书
A语句:select sum(number) as amount,ISBN from tb_Order_detail group by ISBN --用于分组统计出每种图书的销售数量
as tab --是把用括号括起来的A语句当作一个数据表,并为其起一个别名,这个别名为tab
B语句:select top 10 * from ( A语句 )as tab order by amount desc --用于将统计后的图书按销售数量降序排列
C语句:select * from (select top 10 * from ( B语句) o inner join tb_bookinfo b on o.ISBN=b.ISBN --这是一条内联接语句,用于将B语句代表的数据表与tb_bookinfo进行内联接,目的是获取销售排行在前10位的图书的相关信息,其中,o为B语句所代表的数据表的别名,o.amount表示B语句所代表的数据表中的amount字段;b为数据表tb_bookinfo的别名,b.ISBN表示数据表tb_bookinfo中的字段。
不知这样解析您是否明白,如果不明白,可以按照上面的方法将A语句、B语句和C语句放到SQL Server的查询分析器中运行,看看相关的查询结果,这样对于您理解整个SQL语句会有帮助。
首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照