求一条语句对应id号与姓名

求一条语句对应id号与名称

现在有2张表
表a:
code    name
01      足球
02      排球
03      公司级
04      市级

表b:
classle1  classle2
03         01
04         02

需要一条语句得出如下结果:

classle1    name
市级        排球
公司级      足球

谢谢了

------解决方案--------------------
WITH a AS(
SELECT '01' code,'足球' NAME FROM dual UNION ALL
SELECT '02','排球' FROM dual UNION ALL
SELECT '03','公司级' FROM dual UNION ALL
SELECT '04','市级' FROM dual
),
b AS(
SELECT '03' classle1,'01' classle2 FROM dual UNION ALL
SELECT '04','02' FROM dual)
SELECT a1.NAME,a2.NAME FROM b,a a1,a a2 WHERE b.classle1=a1.code(+) AND b.classle2=a2.code(+)

------解决方案--------------------
引用:

现在有2张表
表a:
code    name
01      足球
02      排球
03      公司级
04      市级

表b:
classle1  classle2
03         01
04         02

需要一条语句得出如下结果:

classle1    name
市级        排球
公司级      足球

谢谢了
这个意思?
with a as(
select '01' code,'足球' name from dual
union all 
select '02' code,'排球' name from dual
union all 
select '03' code,'公司级' name from dual
union all 
select '04' code,'市级' name from dual
),b as(
select '03' classle1,'01' classle2 from dual
union all 
select '04' code,'02' name from dual
)
select (select name from a where a.code = b.classle1) classle1,
       (select name from a where a.code = b.classle2) name
  from b

------解决方案--------------------
引用:
Quote: 引用:

Quote: 引用:


现在有2张表
表a:
code    name
01      足球
02      排球
03      公司级
04      市级

表b:
classle1  classle2
03         01
04         02

需要一条语句得出如下结果:

classle1    name
市级        排球
公司级      足球

谢谢了
这个意思?
with a as(
select '01' code,'足球' name from dual
union all 
select '02' code,'排球' name from dual
union all 
select '03' code,'公司级' name from dual
union all 
select '04' code,'市级' name from dual
),b as(
select '03' classle1,'01' classle2 from dual
union all 
select '04' code,'02' name from dual
)
select (select name from a where a.code = b.classle1) classle1,
       (select name from a where a.code = b.classle2) name
  from b


这是写死的语句吗?code和name是可以维护的。

可以维护,不影响使用。。但是注意code的唯一性。。
------解决方案--------------------
引用:
Quote: 引用:

Quote: 引用:


现在有2张表
表a:
code    name
01      足球
02      排球
03      公司级
04      市级

表b:
classle1  classle2
03         01
04         02

需要一条语句得出如下结果:

classle1    name
市级        排球
公司级      足球

谢谢了
这个意思?
with a as(
select '01' code,'足球' name from dual
union all 
select '02' code,'排球' name from dual