大家帮帮我啊.关于datawindow的.谢谢大了.

kgisherry 2002-09-24 12:39:17
有两个表如下:
表一
id trade_no price type
1 0001 500 AAA
2 0002 400 BBB
...
表二
trade_no type_trade value
0001 COM 100
0001 PSD 200
0001 ERQ 140
0001 EBR 100
0002 COM 200
0002 PSD 90
0002 ERQ 33
0002 EBR 59
...
我现在要把这两个表在一个datawindow里显示出来,格式如下:怎么实现啊?
trade_no price type COM PSD ERQ EBR
0001 500 AAA 100 200 140 100
0002 400 bbb 200 90 33 59
明白我的意思吗?也就是说把第二个表和第一个表合并成单条记录.大家帮我想想办法吧.
...全文
85 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
fjzjr 2002-09-24
  • 打赏
  • 举报
回复
用交叉表crosstab试试,行:trade_no,price,type 列:type_trade
列值:value
ice2water 2002-09-24
  • 打赏
  • 举报
回复
up
kgisherry 2002-09-24
  • 打赏
  • 举报
回复
谢谢大家了,其实好简单的,我已经实现了.本个select语句就搞定了.
select a. trade_no,a.price,a.type,
COM=(select b.value from 表二 b
where b.type_trade="COM" and b.trade_no=a.trade_no),
PSD=(select b.value from 表二 b
where b.type_trade="PSD" and b.trade_no=a.trade_no),
ERQ=(select b.value from 表二 b
where b.type_trade="ERQ" and b.trade_no=a.trade_no),
EBR=(select b.value from 表二 b
where b.type_trade="EBR" and b.trade_no=a.trade_no)
from 表一 a,表二 b
where a.trade_no=b.trade_no

OK,谢谢大家的热心帮助.可是结贴了.
fjzjr 2002-09-24
  • 打赏
  • 举报
回复
揭贴吧。
jacksu19 2002-09-24
  • 打赏
  • 举报
回复
fjzjr(语轩)
是对的,以前我没有用过交叉表,今天试了一下,前几次都不对,最后终于对了,也算有点收获。

刚才给细语电话,你不在。
fjzjr 2002-09-24
  • 打赏
  • 举报
回复
pb6.5:
datawindow->new->data source选sql select->presentation style选 crosstab->OK->选择表一表二->选中这六个字段->退出->在crosstab definition中把trade_no,price,type拖到rows,type_trade拖到columns,value拖到values处,点击OK.
jacksu19 2002-09-24
  • 打赏
  • 举报
回复
我是按这样的原则:
一、行选A表的主建,列选B表的主建,然后值选需要的数据列;
得到的结果就好象对了。

交叉表crosstab:行选trade_no列:type_trade
列值:price,type,value


jacksu19 2002-09-24
  • 打赏
  • 举报
回复
实在没有交叉表的经验,做了半天还是不能够得到想要的结果。
kgisherry 2002-09-24
  • 打赏
  • 举报
回复
能详细一点吗/语轩?你有QQ吗?

611

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧