--简单判断用法
SELECT 1 WHERE EXISTS (SELECT * FROM cpay..System_Setting)
--可以替换count
SELECT COUNT(1) FROM cpay..System_Setting
USE YSB_PayDB
--1 练习NOT EXISTS的用法
--(Exists使用心得:1、先查目标表的全部;2、再用Exists关联目标表过滤掉不要的)
SELECT c.* FROM dbo.YSB_Distributor AS d
INNER JOIN dbo.YSB_CustomerInfo AS c
ON d.DistributorID = c.DistributorID
WHERE d.DistributorName='tests'
AND NOT EXISTS (
SELECT 1 FROM dbo.YSB_DistributorCustomerServiceFee AS s
WHERE c.CustomerNo = s.CustomerNo
) --2 练习NOT EXISTS
SELECT * FROM dbo.YSB_PayProductInfo AS p
WHERE NOT EXISTS (
SELECT 1 FROM dbo.YSB_PayProductSupportBusProduct AS s
WHERE p.PayProductCode = s.PayProductCode AND s.BusProductCode = 'UATP'
) --3 练习NOT EXISTS的用法
SELECT * FROM dbo.Sys_Company
SELECT * FROM dbo.YSB_CustomerInfo
SELECT * FROM dbo.YSB_CustomerAndFactoringCompanyRelation SELECT * FROM dbo.YSB_CustomerInfo AS c
WHERE NOT EXISTS (
SELECT 1 FROM dbo.YSB_CustomerAndFactoringCompanyRelation AS f
INNER JOIN dbo.Sys_Company AS s
ON f.FactoringCompanyID = s.CompanyID
WHERE s.CompanyName = '北京海淀科技企业融资担保有限公司' AND c.CustomerNo = f.CustomerNo
) --4 练习 CASE WHEN的用法
USE MySchool
SELECT * FROM dbo.tblScore
SELECT * FROM dbo.tblCourse
SELECT * FROM dbo.tblStudent
SELECT * FROM dbo.tblTeacher SELECT st.StuId,st.StuName,co.CourseName,sc.Score ,
CASE
WHEN sc.Score >= 90 THEN '优秀'
WHEN sc.Score >= 80 THEN '良好'
WHEN sc.Score >= 60 THEN '及格'
WHEN sc.Score < 60 THEN '不及格'
ELSE '其他'
END AS '成绩',
CASE st.StuSex
WHEN '男' THEN '男生'
WHEN '女' THEN '女生'
ELSE '其他'
END AS 性别
FROM dbo.tblStudent AS st
INNER JOIN dbo.tblScore AS sc
ON st.StuId = sc.StuId
INNER JOIN dbo.tblCourse AS co
ON co.CourseId = sc.CourseId --5 练习CASW WHEN GROUP BY的用法
--(此写法类似Switch...Case...)
SELECT b.BusProductCode, b.BusProductName,
CASE b.BusProductType
WHEN 1 THEN '机票类'
WHEN 2 THEN '平台类'
WHEN 3 THEN '票务类'
END
FROM YSB_PayDB.dbo.YSB_BusProductInfo AS b
--(此写法类似If...Else...)
SELECT b.BusProductCode, b.BusProductName,
CASE
WHEN b.BusProductType = 1 THEN '机票类'
WHEN b.BusProductType = 2 THEN '平台类'
WHEN b.BusProductType = 3 THEN '票务类'
END
FROM YSB_PayDB.dbo.YSB_BusProductInfo AS b SELECT
CASE BusProductType
WHEN 1 THEN '机票类'
WHEN 2 THEN '平台类'
WHEN 3 THEN '票务类'
END AS 业务类型,
COUNT(1) AS 产品数量
FROM YSB_PayDB.dbo.YSB_BusProductInfo
GROUP BY BusProductType

EXISTS/NOT EXISTS CASE WHEN等使用方法的更多相关文章

  1. sql中in/not in 和exists/not exists的使用方法差别

    1:首先来说in/not in的使用方法 in/not in是确定单个属性的值是否和给定的值或子查询的值相匹配: select * from Student s where s.id in(1,2,3 ...

  2. oralce中exists not exists in not in对于NULL的处理

    1.   先讨论 in 与 not in中存在NULL的情况, sql语句如下: 1 select 1 result1 from dual where 1 not in (2, 3); 2 3 4 s ...

  3. ORACLE CASE WHEN 及 SELECT CASE WHEN的使用方法

    CASE 语句 CASE selector   WHEN value1 THEN action1;   WHEN value2 THEN action2;   WHEN value3 THEN act ...

  4. Case when 的使用方法

    SQL Case when 的使用方法 Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THE ...

  5. SQL中IN,NOT IN,EXISTS,NOT EXISTS的用法和差别

    SQL中IN,NOT IN,EXISTS,NOT EXISTS的用法和差别: IN:确定给定的值是否与子查询或列表中的值相匹配. IN 关键字使您得以选择与列表中的任意一个值匹配的行. 当要获得居住在 ...

  6. 思考题:用Use Case获取需求的方法是否有什么缺陷,还有什么地方需要改进?(提示:是否对所有的应用领域都适用?使用的方便性?.......)

    思考题: 用Use Case获取需求的方法是否有什么缺陷,还有什么地方需要改进?(提示:是否对所有的应用领域都适用?使用的方便性?.......) 简答: 一.用例解释: 在软件工程中,用例是一种在开 ...

  7. mysql子查询 exists,not exists,all和any

    (1)实现让结果集A - 结果集B:--利用not exists,合并则可用union . exists,not exists:用于判断且获取结果集A是否存在地结果集B中! ==========结果集 ...

  8. exists关键词和case表达式

    首先声明一下,exist和case没有必然联系,这里只是为了一起整理个笔记. EXIST谓词 如果存在对应的记录,返回TRUE.否则,返回FALSE.*实际使用中,即使不适用exist,基本也可以使用 ...

  9. SQL中Case When的使用方法

    Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex ' THEN '男' ' THEN '女' ELSE '其他' END       --Case搜索 ...

随机推荐

  1. C# 异步编程2 EAP 异步程序开发

    在前面一篇博文记录了C# APM异步编程的知识,今天再来分享一下EAP(基于事件的异步编程模式)异步编程的知识.后面会继续奉上TPL任务并行库的知识,喜欢的朋友请持续关注哦. EAP异步编程算是C#对 ...

  2. 有var和没有var的本质区别

    我们创建一个变量: var a = 100: 同时,大家也知道,就是不写var关键字也可以创建.在很多教程和说法中,将没有var 的这个名称称之为“全局变量”.如果我在全局直接写一个var abc = ...

  3. 关联本地文件夹到github项目

    git init git remote add origin https://自己的仓库url地址 git status git add . git commit -m '[提交内容的描述]' 先 p ...

  4. 大型网站的 HTTPS 实践(三)——基于协议和配置的优化

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt389 1 前言 上文讲到 HTTPS 对用户访问速度的影响. 本文就为大家介 ...

  5. vue中数据双向绑定的实现原理

    vue中最常见的属v-model这个数据双向绑定了,很好奇它是如何实现的呢?尝试着用原生的JS去实现一下. 首先大致学习了解下Object.defineProperty()这个东东吧! * Objec ...

  6. [转载]PS各个工具的字母快捷键和英文全名

    原文地址:PS各个工具的字母快捷键和英文全名作者:Tycho     选框-Marquee(M)     移动-move(V)     套索-Lasso(L)     魔棒-Wand(W) 喷枪-in ...

  7. 个人作业3—个人总结(Alpha阶段)

    一.关于Alpha阶段的总结 1.我们团队的情况 关于我们拖拉机团队,大家在一起做项目的这几周算是比较团结.首先组长布置的任务,每个人都有认真去做,每次例会还会总结不足,提出改进,并且实施这些改进:其 ...

  8. 团队作业8----第二次项目冲刺(beta阶段)5.25

    Day7-05.25 1.每日会议 会议内容: 1.今日对整个项目进行了一个总结. 2.讨论了这次项目中的不足和每个人的贡献. 讨论照片:拍摄者 周迪 2.任务分配情况: 每个人的工作分配表: 队员 ...

  9. 201521123024 《Java程序设计》第4周学习总结

    1. 本周学习总结 2. 书面作业 1.注释的应用 使用类的注释与方法的注释为前面编写的类与方法进行注释,并在Eclipse中查看.(截图) 2.面向对象设计(大作业1,非常重要) 2.1 将在网上商 ...

  10. 201521123042 Java第一周学习总结

    1. 201521123042 <Java程序设计>第一周学习总结 a.用notepad++和eclipse编写Java程序 b.安装Java Q1.为什么java程序可以跨平台运行?执行 ...