EXISTS/NOT EXISTS CASE WHEN等使用方法
--简单判断用法
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等使用方法的更多相关文章
- 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 ...
- 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 ...
- ORACLE CASE WHEN 及 SELECT CASE WHEN的使用方法
CASE 语句 CASE selector WHEN value1 THEN action1; WHEN value2 THEN action2; WHEN value3 THEN act ...
- Case when 的使用方法
SQL Case when 的使用方法 Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THE ...
- SQL中IN,NOT IN,EXISTS,NOT EXISTS的用法和差别
SQL中IN,NOT IN,EXISTS,NOT EXISTS的用法和差别: IN:确定给定的值是否与子查询或列表中的值相匹配. IN 关键字使您得以选择与列表中的任意一个值匹配的行. 当要获得居住在 ...
- 思考题:用Use Case获取需求的方法是否有什么缺陷,还有什么地方需要改进?(提示:是否对所有的应用领域都适用?使用的方便性?.......)
思考题: 用Use Case获取需求的方法是否有什么缺陷,还有什么地方需要改进?(提示:是否对所有的应用领域都适用?使用的方便性?.......) 简答: 一.用例解释: 在软件工程中,用例是一种在开 ...
- mysql子查询 exists,not exists,all和any
(1)实现让结果集A - 结果集B:--利用not exists,合并则可用union . exists,not exists:用于判断且获取结果集A是否存在地结果集B中! ==========结果集 ...
- exists关键词和case表达式
首先声明一下,exist和case没有必然联系,这里只是为了一起整理个笔记. EXIST谓词 如果存在对应的记录,返回TRUE.否则,返回FALSE.*实际使用中,即使不适用exist,基本也可以使用 ...
- SQL中Case When的使用方法
Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex ' THEN '男' ' THEN '女' ELSE '其他' END --Case搜索 ...
随机推荐
- CountDownLatch与CyclicBarrier
对于AbstractQueuedSynchronizer衍生出来的并发工具类,这一篇再介绍俩. 场景1:有4个大文件的数据需要统计,最终将所有的统计结果进行加工,得到最后的分析数据.为了加速处理过程, ...
- Spring Cloud在国内中小型公司能用起来吗?
今天吃完饭休息的时候瞎逛知乎,突然看到这个一个问题Spring Cloud在国内中小型公司能用起来吗?,吸引了我的注意.仔细的看了题主的问题,发现这是一个好问题,题主经过了一番思考,并且用图形全面的将 ...
- C++ 将函数作为形参
今天偶然看到一段代码,其中将函数作为形参进行设计,一开始不理解,自己试了一下,发现果然可行 #include <iostream> using namespace std; void vi ...
- JS自定义对象以及相关成绩系统完整案例演示
[自定义对象] 1.基本概念 ①对象是拥有一系列无无序属性和方法的集合 ②键值对:对象中的数据,用以键值对的形式存在,对象的每个属性和方法,都对应一个键值,以键取值 ③属性:描述对象特征的一系列变量称 ...
- CCNA基础知识摘录
cisco设备的启动要点: 1.检测硬件(保存在rom) 2.载入软件(IOS)(保存在Flash) 3.调入配置文件(密码,IP地址,路由协议都保存在此)(此文件保存在NVRAM) 0x2102:正 ...
- 【beta】阶段 第七次 Scrum Meeting
每日任务 1.本次会议为第七次 Meeting会议: 2.本次会议在下午14:45,课间休息时间在陆大楼召开,召开本次会议为10分钟. 一.今日站立式会议照片 二.每个人的工作 (有work item ...
- 【Beta阶段】第四次scrum meeting
Coding/OSChina 地址 1. 会议内容 学号 主要负责的方向 昨日任务 昨日任务完成进度 接下去要做 99 PM 查找适合的素材模块,和105一起把手势功能连接到APP上 100% 查阅换 ...
- 201521123039 《java程序设计》第十二周学习总结
1. 本周学习总结 2. 书面作业 将Student对象(属性:int id, String name,int age,double grade)写入文件student.data.从文件读出显示. 字 ...
- 201521123106 《Java程序设计》第11周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) 1. ...
- 201521123068 《java程序设计》 第13周学习总结
1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1.网络基础 1.1 比较ping www.baidu.com与ping cec.jmu. ...