希望对两个表进行关联表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把数据取出来,在程序里面对名字进行匹配?
例:
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把数据取出来,在程序里面对名字进行匹配?
-- 不过:感觉你这个设计严重有问题!
-- 如果你A表中有多少个字段,你就要连接B表多少次,
-- 否则:只能用递归的写法:那样SQL简便,但执行效率不高!
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;