一个sql语句的写法

yuanscar 2011-09-08 11:00:20
希望对两个表进行关联

表A里面有两个列记录code,记录的值不一样
例:
COL1 COL2 COL3 .....
1 2 ........
2 3

表B:master表,定义A的code对应的值
例:
code name
1 张三
2 李四
3 王五

希望对A的COL1和COL2同时和表B进行关联,取出名字。
例:对表A的例子数据进行检索
COL1 AS NAME1 COL2 AS NAME2 COL3 .....
张三 李四 .......
李四 王五 .......

请问这样的关联查询用sql能够做到吗?还是只能先从表A把数据取出来,在程序里面对名字进行匹配?
...全文
77 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
hao1hao2hao3 2011-09-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 luoyoumou 的回复:]
-- 当然可以!
-- 不过:感觉你这个设计严重有问题!
-- 如果你A表中有多少个字段,你就要连接B表多少次,
[/Quote]
支持,可以考虑将A表分拆。只要增加一个关联表而已。
lnuwhy 2011-09-08
  • 打赏
  • 举报
回复
一次关联肯定是实现不了,A表中有几列,估计你就要与B表关联几次吧,具体的比如
select (select name from B where B.code=A.col1) COL1 AS NAME1,
(select name from B where B.code=A.col2) COL2 AS NAME2,
COL3,
....
FROM A;
luoyoumou 2011-09-08
  • 打赏
  • 举报
回复
-- 当然可以!
-- 不过:感觉你这个设计严重有问题!
-- 如果你A表中有多少个字段,你就要连接B表多少次,
-- 否则:只能用递归的写法:那样SQL简便,但执行效率不高!

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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