前言导读:

本章是对SQL语句基础功能中,一些功能用法的扩展使用的总结,都是实际工作中一些经验的积累.

1 select列查询功能组合使用

--1 函数处理+列计算+列改名
select 函数(列) + 列名 AS 新列名
from 表名 --2 数据标定+函数处理+列计算+列改名
select CASE WHEN 函数(列) + 列 > 80 THEN '设定字符1'
ELSE '设定字符2'
END as 新列名
FROM 表名

2 group by 组合使用求数+求和

SELECT  列1名 ,
COUNT(求数列) as 次数 ,
SUM(求和列) as 总额 FROM 表名
GROUP BY 列1名

3 in 和like 功能性探索

注意:()和’’对应数字和字符的使用,两个关键字的查询内容都可以是字符或者数字
注意:默认都是字符型数据,如果要进行计算,改成数值型数据 --1 in :
①可以多个查询,
②可以查询字符和数字,
③能一起查,④内容完全对应 select *
from 体检信息
where 姓名 IN ('姓名1','姓名2') select *
from 电话号码
where 姓名 IN ('134','135454') --2 like:
①可以多个查询,
②可以查询数字,
③但是要分列查询,
④内容可以模糊查询 select *
from 体检信息
where 姓名 like '%姓%' or 家属年龄 like '%48%'

4 like连环查询:筛选字符中的有用信息

--第一步:可乐和雪碧同时存在的数据
where 列名 like’%可乐%’ and 列名 like’%雪碧%’
--第二步:显示可乐的数据和显示雪碧的数据
where 列名 like’%可乐%’ or 列名 like’%雪碧%’
--第三步:在显示可乐和雪碧的数据同时去掉有牙膏字样的数据
where 列名 like’%可乐%’ or 列名 like’%雪碧%’ and 列名 not like’%牙膏%’ :

5 is null数据表中空白格解析

--如果空白格中无数据:但是又不是null 那就代表空白格中的数据为0,
--如果是数值列:可以直接使用where 年龄 !='0' 姓名列不为0的列
--如果是字符的列:就可以用where 姓名 like '%_%' 姓名列不为空的列

6 函数各位置用法

--1、函数在select中使用:建立as列名,后接where查询,不能使用as列名,需用完整函数表达式

--2、函数在where中使用:单独在where中使用必须完整布尔表达式

--3、在order by中使用:可以使用as列名进行排序

--4、在case when中使用:出现在条件表达式中,而case语句出现在select中

--5 函数组合说明:函数结果数字+比较范围

--函数结果数字+计算数字

--函数使用位置说明:
--函数在select中格式 :select 函数名 (列名) from 表名
--函数在where中格式 : select * from 表名 where 函数名(列名)

7 子查询各位置用法

说明:where位置的子查询是最常用的.

--1单句from位置,具体用途待研究
select * from (select 统筹支付,count(*) 次数 --门诊结算金额出现频率前20名
from T_医院门诊结算单_西丰
where 统筹支付>0
group by 统筹支付
order by 次数 desc)
where rownum<21; --2union位子 双句子查询,两句结果合并
select count(*)
from (select 身份证号
from T_医院门诊结算单_西丰
group by 身份证号
having sum(统筹支付)>0 union --合并去重 select 身份证号
from T_医院住院结算单_西丰
group by 身份证号
having sum(统筹支付)>0); --3 from位置 连接查询带子查询
select * from (查询语句) join (查询语句) on 条件连接 --4 select位置的子查询
select *,(select 想要在父表显示的列名1
from 子表1
where 父表.相同列 = 子表1.相同列 ) as 表1 , (select 想要在父表显示的列名2
from 子表2
where 父表.相同列 = 子表2.相同列 ) as 表2
from 父表
--格式说明:新增列子查询中:select 只能显示一列信息,多了报错,如果想显示多列可以再写一个,where 中设定的条件就是两个表连接的内容
--重点说明:如果是新增的列参与运算,不能用as后的名字,需要用新增的运算格式

(本章完)

此资源有PDF目录版,如想获得请扫码关注右侧公众号自动获取

感恩笔记之二_SQL语句扩展功能的更多相关文章

  1. Oracle使用学习笔记(二)_Sql语句

    一.Sql语句的分类 数据操作语言,简称DML(data manipulation language),如增加,删除,修改,查询数据等 数据定义语言,简称DDL(data defination lan ...

  2. JavaScript DOM编程艺术 笔记(二)语句操作

    操作 var total = (1+4)*5; year = year +1; year++; var message = "i am" + "girl"; 是 ...

  3. 感恩笔记之SQL查询功能最简使用模板

    感恩笔记之SQL查询功能最简使用模板 第一部分:SQL单表功能 1 语句主要关键字 SELECT --查询数据列 INTO --新建数据表 FROM --查询数据表 WHERE --筛选数据表结果 O ...

  4. Hibernate学习笔记(二)

    2016/4/22 23:19:44 Hibernate学习笔记(二) 1.1 Hibernate的持久化类状态 1.1.1 Hibernate的持久化类状态 持久化:就是一个实体类与数据库表建立了映 ...

  5. X-Cart 学习笔记(二)X-Cart框架1

    目录 X-Cart 学习笔记(一)了解和安装X-Cart X-Cart 学习笔记(二)X-Cart框架1 X-Cart 学习笔记(三)X-Cart框架2 X-Cart 学习笔记(四)常见操作 四.X- ...

  6. C++Primer第5版学习笔记(二)

    C++Primer第5版学习笔记(二) 第三章的重难点内容         这篇笔记记录了我在学习C++常用基本语法的学习过程,基本只记录一些重难点,对概念的描述不是一开始就详尽和准确的,而是层层深入 ...

  7. Mysql学习笔记(二)数据类型 补充

    原文:Mysql学习笔记(二)数据类型 补充 PS:简单的补充一下数据类型里的String类型以及列类型... 学习内容: 1.String类型 2.列类型存储需求 String类型: i.char与 ...

  8. [.NET] 《Effective C#》读书笔记(二)- .NET 资源托管

    <Effective C#>读书笔记(二)- .NET 资源托管 简介 续 <Effective C#>读书笔记(一)- C# 语言习惯. .NET 中,GC 会帮助我们管理内 ...

  9. [.NET] 《Effective C#》快速笔记(二)- .NET 资源托管

    <Effective C#>快速笔记(二)- .NET 资源托管 简介 续 <Effective C#>读书笔记(一)- C# 语言习惯. .NET 中,GC 会帮助我们管理内 ...

随机推荐

  1. ajax前后台通信验错

    目录 默认contenType下 总结以下例证: 1.当为简单JSON时 ajax controller vo 2.当为复杂JSON的时候 ajax controller vo 结果 contentT ...

  2. Go与接口:实现接口的条件

    接口类型变量 Go是强类型语言,你不能将整数值赋值给浮点型变量.同样,也不能将没有实现接口的类型值赋值给接口类型变量. // 1.定义变量是接口类型 var w io.Writer // 2.将具体类 ...

  3. git tag的用法及意义

    git tag 介绍 命令是用来给当前项目状态(在某次commit后)打标签的,目的是便于以后将项目状态回滚到当时打标签的状态.可以把它与虚拟机的snapshot(快照)进行类比. 回想当时在看< ...

  4. vscode如何配置ts的lint,如何配置才能让eslint和prettier不冲突一键格式化代码(vue开发使用)

    最近在使用ts,发觉tslint在vscode上使用很不方便,不如eslint一键格式化高效,就想着能不能配置下vscode让其像写js一样爽 这篇文章主要解决2个问题,第一个是如何让vscode使用 ...

  5. 接口自动化-python+requests+pytest+csv+yaml

    本套代码和逻辑 是本人的劳动成果,如果有转载需要标注, 非常适合公司做项目的同学!!!小白也可以学哦! 1.项目目录  2.公共方法的封装 2.1如果不用配置文件 可以使用这个方法进行封装--但是有一 ...

  6. 第一次实战:XX漫画的XSS盲打

    第一次实战:XX漫画的XSS盲打 XSS盲打 盲打是一种惯称的说法,就是不知道有没有XSS漏洞存在的情况下,不顾一切的输入XSS代码在留言啊投诉窗口啊之类的地方,尽可能多的尝试XSS的语句,就叫盲打. ...

  7. WHY IS A BYTE 8 BITS? OR IS IT?

    WHY IS A BYTE 8 BITS? OR IS IT? 原文链接:http://www.bobbemer.com/BYTE.HTM I recently received an e-mail ...

  8. 洛谷P3768 简单的数学题解题报告

    $$\begin{eqnarray}&\sum_{i=1}^{n}\sum_{j=1}^{n}ij\gcd(i,j)\\&\sum_{d=1}^{n}\sum_{i=1}^{n}\su ...

  9. Golang入门学习(二):控制分支

    文章目录 @[TOC] 1. 控制分支 1.1 if-else分支 1.2 switch分支 1.4 while 和do...while循环结构 1.5 多种循环结构 1.6 break 1.7 co ...

  10. Mybatis源码解析5—— 接口代理

    本篇文章,可乐将为大家介绍通过接口代理的方式去执行SQL操作.话不多说,直接上图: 其实无论哪种方式,我们最终是需要找到对应的 SQL 语句,接口代理的方式就是通过 [包名.方法名] 的方式,去找到 ...