| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 727 人关注过本帖
标题:SQL如何将A表中代码按B表的已知项翻译,详见附件,谢谢指教!
只看楼主 加入收藏
tigerken
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-6-21
结帖率:50%
收藏
已结贴  问题点数:18 回复次数:9 
SQL如何将A表中代码按B表的已知项翻译,详见附件,谢谢指教!
AB表.zip (1.94 KB)
搜索更多相关主题的帖子: 翻译 如何 
2012-06-29 17:05
png
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:126
专家分:880
注 册:2010-10-6
收藏
得分:6 
差太多了.
2012-06-29 21:32
netlin
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:24
帖 子:544
专家分:4308
注 册:2012-4-9
收藏
得分:6 
使用Replace()函数,配合Update语句进行替换。

做自己喜欢的事!
2012-06-29 22:54
tigerken
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-6-21
收藏
得分:0 
还是不明白,能说详细点吗?
2012-07-01 16:24
png
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:126
专家分:880
注 册:2010-10-6
收藏
得分:0 
A表违反了相关数据库设计的最基本原则. 应该考虑成类似 -

ID 代码
1  102
1  105
2  102
3  203
4  105
4  203

2012-07-02 21:53
tigerken
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-6-21
收藏
得分:0 
楼上,其实用B表对应A表翻译是一样的,是吗?
2012-07-03 21:16
shangxisen
Rank: 2
等 级:论坛游民
帖 子:29
专家分:46
注 册:2010-3-20
收藏
得分:6 
select REPLACE(REPLACE(REPLACE(a,'102','风'),'105','雪'),'203','雷') from
(select  '102|105' a
union all
select '102' a
union all
select '203' a
union all
select '105|203' a) table1
2012-07-05 09:13
shangxisen
Rank: 2
等 级:论坛游民
帖 子:29
专家分:46
注 册:2010-3-20
收藏
得分:0 

select a, REPLACE(REPLACE(REPLACE(a,'102','风'),'105','雪'),'203','雷') from
(select  '102|105' a
union all
select '102' a
union all
select '203' a
union all
select '105|203' a) table1
2012-07-05 09:15
netlin
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:24
帖 子:544
专家分:4308
注 册:2012-4-9
收藏
得分:0 
回复 8楼 shangxisen
看了有些额外的收获!
8楼 shangxisen 的 union 用得很好啊!

不过,用三层Replace来解决楼主的问题,可能执行效率不会太高,且程序的通用性受到限制了。
仅仅是交流,8楼 shangxisen别在意!

做自己喜欢的事!
2012-07-06 09:07
tigerken
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-6-21
收藏
得分:0 
谢谢8楼回复,如果A\B表不是确定的值,常变化,该如何解决?
2012-07-08 12:37
快速回复:SQL如何将A表中代码按B表的已知项翻译,详见附件,谢谢指教!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016895 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved