oracle sql case when (转)
2011-05-21 19:11
274 查看
// 如果column_4 = 'IT_PROG' 那么 输出 1.10 * column_3
// 如果column_4 = 'ST_CLERK' 那么 输出 1.15 * column_4
// 否则 输出 column_3 使用别名 "REVISED_SALARY"
SELECT column_1,column_2,column_3
CASE column_4
WHEN 'IT_PROG' THEN 1.10*column_3
WHEN 'ST_CLERK' THEN 1.15*column_3
WHEN 'SA_REP' THEN 1.20*column_3
ELSE column_3 END "REVISED_SALARY"
FROM table_name;
//
SELECT column_1,column_2,
SUM(CASE WHEN column_3 = '100' THEN column_4 ELSE 0 END) AS cost_100
FROM table_name
GROUP BY column_1,column_2;
// 如果 f_this_price = 0 或 f_last_price = 0 则结果为 0 ,如果都不为 0 时, 取两列差的合计
SELECT f_wzbm,
CASE WHEN SUM(f_this_price) = 0 OR SUM(f_last_price) = 0
THEN 0
ELSE SUM(f_this_price - f_last_price)
END f_markup_price
FROM table_name
GROUP BY f_wzbm;
// 如果column_4 = 'ST_CLERK' 那么 输出 1.15 * column_4
// 否则 输出 column_3 使用别名 "REVISED_SALARY"
SELECT column_1,column_2,column_3
CASE column_4
WHEN 'IT_PROG' THEN 1.10*column_3
WHEN 'ST_CLERK' THEN 1.15*column_3
WHEN 'SA_REP' THEN 1.20*column_3
ELSE column_3 END "REVISED_SALARY"
FROM table_name;
//
SELECT column_1,column_2,
SUM(CASE WHEN column_3 = '100' THEN column_4 ELSE 0 END) AS cost_100
FROM table_name
GROUP BY column_1,column_2;
// 如果 f_this_price = 0 或 f_last_price = 0 则结果为 0 ,如果都不为 0 时, 取两列差的合计
SELECT f_wzbm,
CASE WHEN SUM(f_this_price) = 0 OR SUM(f_last_price) = 0
THEN 0
ELSE SUM(f_this_price - f_last_price)
END f_markup_price
FROM table_name
GROUP BY f_wzbm;
相关文章推荐
- oracle-SQL-case when 改用 DECODE
- ORACLE SQL开发where子句之case-when
- SQL语句中的case when语法以及Oracle中的类似方法
- SQL语句中的case when语法以及Oracle中的类似方法
- SQL语句中的case when语法以及Oracle中的类似方法
- SQL语句中的case when语法以及Oracle中的类似方法
- 【SQL】在数据库中做出判断,改变要显示的内容,case when可以做到,oracle中实现
- Oracle Case When嵌套判断结果集SQL
- Oracle SQL case when 表达式
- oracle pl sql case when case_not_found
- 当执行SQL(ORACLE)时判段另一个字段的值去执行不同SQL,及 CASE WHEN 语句的使用
- SQL数据库查询实现行转列与列转行结果SQL语句(适用于SqlServer数据库,oracle需要修改case when语句)
- 【Oracle学习】之 在sqlplus设置格式 和 case...when 和 decode
- oracle case when 在sql中的使用
- sql语句中的条件控制 case ..when.
- Oracle CASE WHEN 用法介绍
- sql case when then else end
- oracle 学习笔记 - DECODE函数和CASE WHEN 比较
- SQL利用Case When Then end多条件判断
- oracle case when的用法