有人吗,可以问个Oracle的问题吗_有问有答_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  有问有答 »
总帖数
2
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3287 | 回复: 1   主题: 有人吗,可以问个Oracle的问题吗        下一篇 
席城说眼泪是蜕变
注册用户
等级:列兵
经验:86
发帖:2
精华:0
注册:2015-8-31
状态:离线
发送短消息息给席城说眼泪是蜕变 加好友    发送短消息息给席城说眼泪是蜕变 发消息
发表于: IP:您无权察看 2015-8-31 18:07:12 | [全部帖] [楼主帖] 楼主

QQ图片20150831180946.png

想让有一列出现两次的 第二列变成* 

02.png





赞(0)    操作        顶端 
panpan.nie
注册用户
等级:大校
经验:4754
发帖:217
精华:2
注册:1970-1-1
状态:离线
发送短消息息给panpan.nie 加好友    发送短消息息给panpan.nie 发消息
发表于: IP:您无权察看 2015-9-1 11:11:13 | [全部帖] [楼主帖] 2  楼

我也不知道你具体想要的是什么样子。

但是实现将图1 变成 图2 的功能,我的思路大致是

创建一张临时表,将 如果有voucher_no重复的列,则更新临时表字段,删除主表,创建新表并插入满足条件的数据,删除临时表

CREATE TABLE test_tmp SELECT * FROM test;
UPDATE test_tmp SET currency_cd='*' WHERE voucher_no IN (SELECT voucher_no FROM test a WHERE ((SELECT COUNT(*) FROM test b WHERE b.voucher_no = a.voucher_no)>1));
DROP TABLE test;
CREATE TABLE test SELECT DISTINCT * FROM test_tmp;
DROP TABLE test_tmp;

也许有更好的方法,我只知道这么多了~~~




赞(0)    操作        顶端 
总帖数
2
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论