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

关于group话语

2013-09-05 
关于group语句本帖最后由 suanleba10 于 2013-08-19 12:11:23 编辑code:SELECT Shippers.ShipperName, Emp

关于group语句
本帖最后由 suanleba10 于 2013-08-19 12:11:23 编辑
code:

SELECT Shippers.ShipperName, Employees.LastName,
COUNT(Orders.OrderID) AS NumberOfOrders
FROM ((Orders
INNER JOIN Shippers
ON Orders.ShipperID=Shippers.ShipperID)
INNER JOIN Employees
ON Orders.EmployeeID=Employees.EmployeeID)
GROUP BY ShipperName,LastName;


提问:
1. join ..on, group, select这三个函数(不确定是不是都是函数)内部的处理机制的顺序是怎样的?我理解是先join..on, 后group, 最后用select输出。
2. group more than one columns, 就像上边那样。 group了两项, ShipperName,LastName, 处理时时把他们当成‘&&‘ 还是’||’ 还是就是分成独立的两组分别处理(貌似应该不可能)?

求指教!
可能问得有点莫名其妙,但我是纯SQL新手,望莫笑!
谢谢!
[解决办法]
--#1.on->join->group->select
--SQL逻辑执行顺序
(8)    SELECT (9) DISTINCT (11) <TOP_specification> <select_list>
(1)    FROM <left_table>
(3)        <join_type> JOIN <right_table>
(2)            ON <join_condition>
(4)    WHERE <where_condition>
(5)    GROUP BY <group_by_list>
(6)    WITH {CUBE 
[解决办法]
 ROLLUP}    
(7)    HAVING <having_condition>
(10)ORDER BY <order_by_list>
--#2.当成&&来处理
--ShipperName和LastName,两个字段的组合值一模一样,才会被放到一个组里面。

热点排行