跪求一句SQL代码(Oracle Rownum)

来源:百度知道 编辑:UC知道 时间:2024/09/25 20:10:26
有如下两张表:
客户表
CoustmerID CoustmerName
-----------------------------
A name1
B name2
订单表
OrderID CoustmerID Remark
------------------------------------
order1 A ...
order2 A ...
order3 A ...
order4 B ...
order5 B ...

最后要查询出如下结果:
1 A order1 ....
1 A order2 ....
1 A order3 ....
2 B order4 ....
2 B order5 ....

如何用一句SQL语句实现这个查询功能?
记录是无数条,所以case when 。。then 。。
这个行不通,还是谢谢一楼的哈。
看看还有没 办法

关键是查询结果的rownum有点特殊,不知道怎么产生这个

select b.nn,a.CoustmerID ,a.OrderID
from 订单表 a,
(select c.CoustmerID,rownum as nn from 客户表 c) b
where a.CoustmerID = b.CoustmerID

其实只要把客户表中的CoustmerID 和rownum查出了,做为结果集联合订单表就可以了
-------------------上面的语句我用其他表试了,没有问题

想知道你是oracle数据库吗?
还是其他数据库,想做到oracle的rownum效果?

select (case when CoustmerName='name1' then 1 else 2 end )as no,订单表.CoustmerID ,OrderID from 客户表,订单表
where 客户表.CoustmerID=订单表.CoustmerID
order by no

没环境,没测试过
------------------------------------------------------------------------------------------
select substr(CoustmerName,5,length(CoustmerName)-4)as no,订单表.CoustmerID ,OrderID from 客户表,订单表
where 客户表.CoustmerID=订单表.CoustmerID
order by no

没看出来最后的结果和rownum有什么关系,只是感觉有A的显示1,有B的显示2……