数据库表:
select * from rec order by rst,game_time;
?
? ? ID GAME_TIME ? ? ?RST
------ -------------- ----
? ? ?2 01-1月 -11 ? ? F
? ? ?6 01-1月 -11 ? ? F
? ? ?3 02-1月 -11 ? ? F
? ? ?9 02-1月 -11 ? ? F
? ? ?7 03-1月 -11 ? ? F
? ? ?1 01-1月 -11 ? ? W
? ? ?4 01-1月 -11 ? ? W
? ? ?8 01-1月 -11 ? ? W
? ? ?5 02-1月 -11 ? ? W
?
要求结果:
比赛日期 ? ? ? 结果 ? 结果统计
-------------- ---- ----------
02-1月 -11 ? ? 失败 ? ? ? ? ?2
03-1月 -11 ? ? 失败 ? ? ? ? ?1
02-1月 -11 ? ? 胜利 ? ? ? ? ?1
01-1月 -11 ? ? 失败 ? ? ? ? ?2
01-1月 -11 ? ? 胜利 ? ? ? ? ?3
?
写出SQL1:decode函数
select game_time as 比赛日期, decode(rst,'F','失败','W','胜利','无结果') as 结果, count(rst) as 结果统计 from rec group by game_time,rst;
?SQL2:case语句:
select game_time as 比赛日期,(case rst when 'W' then '胜利' when 'F' then '失败' else '无结果'end)结果,count(rst) as 结果统计from recgroup by game_time,rst;
?
记录下:
1. ?decode函数用法:
decode(表达式1,条件1,结果1,[条件2,结果2][default]);
2. ?case 语句:
case 表达式
when 表达式1 then ....
when 表达式2 then ....
else ?......
end 表达式