我可以写这个声明更短吗?这个声明更短/订单
Select S_name
from
Supplier
JOIN Nation ON Supplier.S_nationkey = Nation.N_nationkey
JOIN Region on Nation.n_regionkey = region.R_regionkey
Where
Region.r_name = 'AFRICA'
Union
Select C_name
from
Customer
JOIN Nation ON Customer.C_Nationkey = Nation.N_nationkey
JOIN Region on Nation.N_regionkey = Region.R_regionkey
Where
Region.R_name = 'AFRICA'
,我想按名称排序我的输出,但我不知道为什么,因为我确实有C_name和S_NAME作为输出?
感谢
什么DBMS您使用的? (mssql,mysql oracel)? – Arion 2012-04-23 13:50:11
如果您希望将S_name和C_name一起输出到一个列中,则无法真正缩短它。考虑使用'UNION ALL',以便结果不被重复数据删除,然后在末尾添加别名'S_name AS name''C_name as name''ORDER BY name' – 2012-04-23 13:50:18