【发布时间】:2018-11-29 04:52:50
【问题描述】:
我的查询:
select school, rating, name
from mytable
where school = 'SchoolN';
结果:
+--------+------+------+ |学校|评分|姓名| +--------+------+------+ |学校N | A |姓名1| |学校N | B |姓名2| |学校N | A |姓名3| |学校N | A |姓名4| |学校N | A |姓名5| |学校N | B |姓名6| |学校N | B |姓名7| |学校N | B |姓名8| |学校N | B |姓名9| +--------+------+------+我想要的是这样命名:
+--------+------+---------+ |学校|评分|姓名| +--------+------+---------+ |学校N |一个 |i-Name1 | |学校N | B |我的名字2 | |学校N | A |ii-名称3 | |学校N | A |iii-姓名4| |学校N | A |iv-Name5 | |学校N | B |ii-名称6 | |学校N | B |iii-姓名7| |学校N | B |iv-Name8 | |学校N | B |v-Name9 | +--------+------+---------+我试过了:
select school, rating,
case when rownum = 1 then 'i-' || name
when rownum = 2 then 'ii-' || name
when rownum = 3 then 'iii-' || name
when rownum = 4 then 'iv-' || name
when rownum = 5 then 'v-' || name
end Name
from mytable
where school = 'SchoolN';
但是结果是错误的:
+--------+------+---------+ |学校|评分|姓名| +--------+------+---------+ |学校N |一个 |i-Name1 | |学校N | B |ii-名称2 | |学校N | A |iii-姓名3| |学校N | A |iv-Name4 | |学校N | A |v-Name5 | |学校N | B |姓名6 | |学校N | B |姓名7 | |学校N | B |姓名8 | |学校N | B |姓名9 | +--------+------+---------+【问题讨论】: