oracle 查询表 结果显示为特殊结构 请高手们帮帮忙,多谢!
原表结构
类型 名称 单号 数量
R A 1001 100
C A 3001 500
C A 4001 500
结果显示为
名称 R单号 R数量 C单号 C数量
A 1001 100 3001 300
A 4001 500
补充:不好意思第一次写错了,显示结构应该是这样的
名称 R单号 R数量 C单号 C数量
A 1001 100 3001 500
A 4001 500
其实这个应该属于多层交叉表,应该这样叫吧........
名称 C R
单号 数量 单号 数量
A 1001 100 3001 500
A 4001 500
答案:1.打开Sqlserver,在对象管理器里找到要搞的库右键-》任务-》生成脚本
2.在弹出的向导中跟着向导一步一步做吧,最后可以搞出一个文件
3.一个库就一个文件你就直接在mysql里执行
其他:你的C数量怎么是300,最好你提供下建表语句和测试数据吗,这样才好写查询 表结构有问题吧?怎么来让R单和C单建立关联呢? 试试这样
SELECT r.名称,r.单号,r.数量,c.单号,c.数量 FROM
(
SELECT a.名称,a.单号,a.数量,row_number() over(PARTITION BY a.名称 ORDER BY a.单号) rn
FROM table_name a WHERE a.名称='R'
) r,
(
SELECT a.名称,a.单号,a.数量,row_number() over(PARTITION BY a.名称 ORDER BY a.单号) rn
FROM table_name a WHERE a.名称='C'
) c
WHERE r.名称(+)=c.名称(+) AND r.rn(+)=c.rn(+)
上一个:如何配置 oracle 11g 作为网络服务器数据库
下一个:oracle dblink的问题