我刚刚创建了一个临时表:
create temporary table userAndProductSales as
select p.p_name, u.u_name, u.s_price, u.quantity
from product p
join userAndStates u
on p.s_id = u.s_id
现在我想选择一些具有特定订单的列。例如,我希望select给出一个输出:
u_name1 p_name1
u_name1 p_name2
u_name1 p_name3
u_name1 p_name4
...
u_name2 p_name1
u_name2 p_name2
u_name2 p_name3
....
依此类推。我如何得到这个输出?我尝试了以下几点:
select (select u_name from userandproductsales order by u_name), p_name from userandproductsales
但我收到了错误
更新:弄清楚我加入的表没有给我正确的数据。谢谢你的帮助。
答案 0 :(得分:1)
以下是ORDER BY:
的使用方法SELECT * from userandstatesales
order by u_name , p_name
答案 1 :(得分:1)
除非有理由创建临时表(比如稍后需要在同一会话中访问它),否则您应该避免支出,只需从您的选择中执行order by
。例如:
select p.p_name, u.u_name, u.s_price, u.quantity
from product p
join userAndStates u
on p.s_id = u.s_id
order by u.u_name, p.p_name;