表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选C
2014-08-18 00:00
274 查看
1:
DELIMITER //
CREATE PROCEDURE ProcOut()
BEGIN
DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN END;
DECLARE Sum_a INT(11);
DECLARE Sum_b INT(11);
DECLARE Sum_c INT(11);
-- 获取A列中的总值 <--
DECLARE cur_1 CURSOR FOR SELECT SUM(A) FROM table_name;
OPEN cur_1;
FETCH cur_ 1 INTO Sum_a;
CLOSE cur_1;
-- 获取B列中的总值 <--
DECLARE cur_2 CURSOR FOR SELECT SUM(B) FROM table_name;
OPEN cur_2;
FETCH cur_ 2 INTO Sum_b;
CLOSE cur_2;
-- 获取C列中的总值 <--
DECLARE cur_3 CURSOR FOR SELECT SUM(C) FROM table_name;
OPEN cur_3;
FETCH cur_ 3 INTO Sum_c;
CLOSE cur_3;
IF Sum_a > Sum_b THEN
SELECT A FROM table_name;
ELSEIF Sum_b > Sum_c THEN
SELECT B FROM table_name;
ELSE
SELECT C FROM table_name;
END IF;;
END;//
CALL ProcOut()//
2:
select
case
when A>B then
case when A>C then A
else C end
else
case when B>C then B else C
end
end as name
from member
3:
select
(case when A>B then A else B end) as 'A’ ,
(case when B>C then B else C end) as 'B' from Person;
DELIMITER //
CREATE PROCEDURE ProcOut()
BEGIN
DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN END;
DECLARE Sum_a INT(11);
DECLARE Sum_b INT(11);
DECLARE Sum_c INT(11);
-- 获取A列中的总值 <--
DECLARE cur_1 CURSOR FOR SELECT SUM(A) FROM table_name;
OPEN cur_1;
FETCH cur_ 1 INTO Sum_a;
CLOSE cur_1;
-- 获取B列中的总值 <--
DECLARE cur_2 CURSOR FOR SELECT SUM(B) FROM table_name;
OPEN cur_2;
FETCH cur_ 2 INTO Sum_b;
CLOSE cur_2;
-- 获取C列中的总值 <--
DECLARE cur_3 CURSOR FOR SELECT SUM(C) FROM table_name;
OPEN cur_3;
FETCH cur_ 3 INTO Sum_c;
CLOSE cur_3;
IF Sum_a > Sum_b THEN
SELECT A FROM table_name;
ELSEIF Sum_b > Sum_c THEN
SELECT B FROM table_name;
ELSE
SELECT C FROM table_name;
END IF;;
END;//
CALL ProcOut()//
2:
select
case
when A>B then
case when A>C then A
else C end
else
case when B>C then B else C
end
end as name
from member
3:
select
(case when A>B then A else B end) as 'A’ ,
(case when B>C then B else C end) as 'B' from Person;
相关文章推荐
- 表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列
- 表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。
- SQL面试题:有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列
- SQL面试题:有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列
- 表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。
- SQL面试题: 数据库中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列 ,当B列大于C列时选择B列否则选择C列 ,
- 表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选C
- 表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列
- 用一条SQL语句 查询出每门课程都大于80分的学生姓名" 的实现方式
- sql语句怎样实现求在列中选择某些相同名称的行,对这些相同名称行的数据进行累加.
- Sql语句中同样实现关联和子查询选择策略
- UNION,EXISTS,IN等在SQL语句中的灵活应用和场境的选择。
- SQL查询语句对象化的实现(C#)
- SQL语句导入导出大全 选择自 whchen 的 Blog
- 用sql语句实现按时间求累计值
- 如何用SQL语句实现精确搜索以及模糊搜索
- 海量数据实现分页的sql语句
- 用T-SQL语句实现SQL server与XLS,MDB等文件的数据交换
- SQL语句实现横排
- ASP构造大数据量的分页SQL语句 选择自 AppleBBS 的 Blog