使用SQL中SELECT语句的使用条件逻辑

如果使用CASE表达式直接在SELECT语句中执行条件逻辑,可以解决使用数据库中的一些问题,下面将为您示例分析,供您参考:

创新互联一直在为企业提供服务,多年的磨炼,使我们在创意设计,成都全网营销推广到技术研发拥有了开发经验。我们擅长倾听企业需求,挖掘用户对产品需求服务价值,为企业制作有用的创意设计体验。核心团队拥有超过十载以上行业经验,涵盖创意,策化,开发等专业领域,公司涉及领域有基础互联网服务服务器托管成都app软件开发公司、手机移动建站、网页设计、网络整合营销。

问题

   在SELECT语句中对数值进行IF-ELSE操作。例如,要产生一个结果集,如果一个员工的工资小于等于$2000,就返回消息UNDERPAID,如果大于等于$4000,就返回消息OVERPAID,如果在两者之间,就返回OK。结果集应如下所示:

ENAME SAL STATUS
---------- ---------- ----------
SMITH 800 UNDERPAID
ALLEN 1600 UNDERPAID
WARD 1250 UNDERPAID
JONES 2975 OK
MARTIN 1250 UNDERPAID
BLAKE 2850 OK
CLARK 2450 OK
SCOTT 3000 OK
KING 5000 OVERPAID
TURNER 1500 UNDERPAID
ADAMS 1100 UNDERPAID
JAMES 950 UNDERPAID
FORD 3000 OK
MILLER 1300 UNDERPAID

解决方案

   使用CASE表达式直接在SELECT语句中执行条件逻辑。

select ename,sal,
    case when sal <= 2000 then 'UNDERPAID'
         when sal >= 4000 then 'OVERPAID'
         else 'OK'
    end as status
from emp

讨论

   CASE表达式可以针对返回值执行条件逻辑。可以给CASE表达式取别名,以返回更易读的结果集。在本解决方案中,给CASE表达式取的别名是STATUS。ELSE子句是可选的,如果没有使用ELSE,对于不满足判断条件的行,CASE表达式会返回NULL。

网站标题:使用SQL中SELECT语句的使用条件逻辑
文章网址:http://www.shufengxianlan.com/qtweb/news43/62493.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联