技术标签: SQL
数据操纵语言(DML Data Manipulation Language)
SELECT(查询)
INSERT(插入数据)
UPDATE(更新数据)
DELETE(删除数据)
数据定义语言(DDL Data Definition Language)
CREAT
ALTER
DROP
RENAME
TRUNCATE
数据控制语言(DCL Data Control Language)
GRANT(比如授权远程连接、权限授权)
事件(Transaction)
COMMIT
ROLLBACK
②SELECT * 【SELECT 子句】
①FROM 数据来源(可以是数据表) 【FROM 子句】
注意:
DISTINCT
关键字,可以去除重复信息AS
也可以不用,注意在FROM子句中数据来源使用别名时,不要使用AS
语法
③SELECT * 【SELECT 子句】
①FROM 数据来源(可以是数据表) 【FROM 子句】
②WHERE 过滤条件 【WHERE 子句】
WHERE 子句
是对数据进行条件判断,之后显示出满足条件的数据BETWEEN AND
的使用,小的数据在前,大的数据在后,对日期和数字可用,且BETWEEN AND
被数据认为是一个判断条件,执行效率快,a > b AND a < c
数据库认为是两个判断,执行效率较慢UNION ALL
的使用,用于连接或操作,相比OR
,可以将查询结果显式的合并在一起并且避免索引失效IS
、 IS NOT
、 IN
、NOT IN
LIKE
关键字③SELECT
①FROM
②WHERE 模糊查询的字段 LIKE 模糊查询的条件
排序查询使用关键字ORDER BY
基本语法:
③SELECT * 【SELECT 子句】
①FROM 数据来源(可以是数据表) 【FROM 子句】
②WHERE 过滤条件 【WHERE 子句】
④ORDER BY 排序的字段 ASC|DESC 【ORDER BY 子句】
注意:
ORDER BY
子句在SELECT
子句之后执行,可以使用SELECT
子句中使用的别名
排序的字段内容类型是数字或日期(英文也可以)
WHERE
中定义条件去除后显示(因为笛卡尔积是在产生后被消除不显示,所以数据量的时候不能用多表查询,消耗性能)内连接查询,只查询满足条件的数据,默认的就是内连接查询
可以使用 INNER JION...ON...
关键字在JOIN之后加入另一张数据表,在ON之后消除笛卡尔积
外连接查询分为:左外连接查询、右外连接查询、全外连接查询
左外连接查询和右外连接查询可以使用(+)
来表示,注意位置与名称是相反的,且此写法只在ORACLE中有效,通用的写法如下
FROM (表1) LEFT OUTER JOIN (表2) ON (消除笛卡尔积语句) 左外连接
FROM (表1) RIGHT OUTER JOIN (表2) ON (消除笛卡尔积语句) 右外连接
FROM (表1) FULL OUTER JOIN (表2) ON (消除笛卡尔积语句) 全外连接
COUNT(*|字段名)
统计查询到的内容非空的数据量
SUM(字段名)
对该字段的内容求和
AVG(字段名)
求平均数
MAX(字段名)
求最大值
MIN(字段名)
求最小值
SYSDATE
动态显示当前系统时间
NVL(expression1,expression2)
优先返回expression1的结果,当1的结果为null时,返回expression2的结果,两者都为null时返回null
使用GROUP BY
子句,基本语法如下:
④SELECT * 【SELECT 子句】
①FROM 数据来源(可以是数据表) 【FROM 子句】
②WHERE 过滤条件 【WHERE 子句】
③GROUP BY 字段名 【GROUP BY子句,对满足条件的数据进行分组】
⑤ORDER BY 排序的字段 ASC|DESC 【ORDER BY 子句】
SELECT
子句中使用了统计函数,同时没有BROUP BY
子句的话,SELECT
子句中只允许有统计函数,不允许出现字段名BROUP BY
子句,那么SELECT
子句中出现的字段名必须是分组字段SELECT
子句中出现了嵌套函数,那么该子句中不允许再出现统计函数之外的任何字段HAVING
子句是对分组统计函数统计出的结果进行过滤的句子
⑤SELECT * --查询数据
①FROM 数据来源 --找到数据源
②WHERE 条件判断 --对数据源进行过滤
③GROUP BY 分组字段 --对满足条件的数据分组
④HAVING 对统计函数进行判断 --对分组统计的数据进行过滤
⑥ORDER BY 排序字段 排序方式 --对过滤后的数据进行排序
WHERE
和HAVING
的区别
WHERE
在GROUP BY
子句之前执行,HAVING
在GROUP BY
子句之后执行WHERE
中不能有统计函数,HAVING
中可以使用统计函数对数据进行过滤
子查询就是将一个查询的结果作为另一个查询(主查询)的数据来源或者判断条件的查询,子查询需要使用小括号括起来
常见的子查询有
WHERE
子查询DEMO 查询出薪资排名第三的雇员信息
FROM
子查询FROM
后面的数据来源可以是数据表,也可以是一个子查询的结果
使用FROM
子查询注意
FROM
子查询的结果作为主查询的数据来源,子查询结果相当于一张临时数据表别名.字段名
来引用SELECT
子查询HAVING
子查询EXISTS
子查询EXISTS
子查询特征:将主查询中的数据带入到子查询中进行验证,通过返回true,主查询显示该数据,不通过返回false,主查询不显示该数据
NOT EXISTS
子查询与EXISTS
子查询相反
ROWNUM
伪列ROWNUM
是动态的在数据表中生成一列,即一个字段,这列数据不属于数据表是动态生成的且该列数据必须从1开始
DEMO1
SELECT ROWNUM AS rn, empno,ename,job,mgr,hiredate,sal,comm,deptno FROM emp;
DEMO2 查询第一条数据
SELECT ROWNUM AS rn, empno,ename,job,mgr,hiredate,sal,comm,deptno FROM emp WHERE ROWNUM = 1;
查询第一条数据的意义在于和DESC
共用方便观察数据表
DEMO2 查询第二条数据
SELECT ROWNUM AS rn, empno,ename,job,mgr,hiredate,sal,comm,deptno FROM emp WHERE ROWNUM = 2;
因为ROWNUM
要求该列必须从1开始,因此直接查第二条数据无法完成,需要使用子查询(这是分页查询的基础)
ROWNUM
实现分页查询DEMO
SELECT *
FROM(
SELECT ROWNUM AS rn, empno,ename,job,sal,hiredate,mgr,comm,depto
FROM emp
WHERE ROWNUM <=10) temp
WHERE rn >=6;
通过以上代码可以实现查询第6-10条数据,假如我们要求网页中数据每页显示5条,这刚好是第二页的数据
计算当前页数据的ROWNUM公式如下:
起始位置 m = (cp-1)*ls+1
最终数据位置 n = cp*ls
注:cp表示当前页,ls表示每页显示数据量
城市扩张对生境质量影响评价与生态安全格局构建—以黄河流域“几”字弯为例。_我黄河流域城市扩张的危害
Keil v5 C51 MDK包 共存合并方式(简单方便) ...
老男孩教育的PYTHON自动化开发课程自2013年第1期到现在已经走到了第12期,2年半的时间里,我们每一期都在对课程细节进行不同程度的优化,课程总时长也从最开始的2个月延长至第12期的五到六月,更新内容足足翻了一倍多,我们培养出来的几百名学员目前已活跃在各大互联网公司的自动化岗位上。然而我们也希望学员在毕业时能获取到更多的知识,进入企业后可以立刻上手进行自动化系统的开发相关工作,或者尝试做一个纯...
Expanded概述Expanded是用于展开Row,Column或Flex的子child的Widget。 使用Expanded可以使[Row],[Column]或[Flex]的子项扩展以填充主轴中的可用空间(例如,水平用[Row]或垂直用[Column])。 如果扩展了多个子节点,则根据[flex]因子将可用空间划分为多个子节点。[Expanded]小部件必须是[Row],[Column]或..._widget expanded
题目描述字符序列的子序列是指从给定字符序列中随意地(不一定连续)去掉若干个字符(可能一个也不去掉)后所形成的字符序列。令给定的字符序列X=“x0,x1,…,xm-1”,序列Y=“y0,y1,…,yk-1”是X的子序列,存在X的一个严格递增下标序列0,i1,…,ik-1>,使得对所有的j=0,1,…,k-1,有xij = yj。例如,X=“ABCBDAB”,Y=“BCDB”是X的一个子序
.parent{ width: 200px; height: 100px; overflow: auto; float: left; margin: 5px; border: none;}.scrollbar{ width: 300px; height: 200px; margin: 0 auto; }.myScrollbar::-webkit-scrollbar { width: 5px; /*滚动_简单的div滚动
4. 当显示内容的字数超过单元格可以显示的字数时,如何让其自动换行(how to wrap text when the length of characters is more than the width of the column):设置这些单元格的所用类的css即可。 如:.x-grid3-cell-inner{white-space:normal;overflow:visible;}需 要
C语言指向函数的指针承载的信息比较复杂,组织起来要素要写全。根据指向函数的指针的书写语法,下面的代码就是一个返回函数指针的函数:int (*f(void))(int){//f是函数,没有参数,返回指向一个函数的指针;这个被指向的函数有一个int型形参,且返回一个int值 return fun;//fun是个函数名,必须具备一个int形参、返回int值的要求}以下代码可以验证上述函数的正确性:<pre t="code" l="cpp">//#include "stdafx.h"//If the v_函数指针作为返回值
%% 清空环境close all;clc;clear;%% 图像压缩filePath='2.bmp';%被压缩的图像的途径quantizationFactor=0.5;%该变量为量化因子,最小为0.01,最大为255,建议在0.5和3之间,越小质量越好文件越大I=imread(filePath);%读bmp彩色图像FileCode=encode(I,quantizationFactor);%压缩图像%保存文件savePath='save.myjpeg';%文件保存路径fileID_基于matlab的jpeg编码代码
原创博客地址:https://lwxshow.com/post/1816.htmlsublime text 可以说是与eclipse并说全世界目前最好的开发工具了。很多时候,大家在网上搜索sublimetext 3安装package control,显示的99%都是不能用的
下面我们利用几个实例来总结了利用php fopen函数来实现文件的读写操作,有需要学习的朋友可参考参考.简单的参考fopen函数fopen() 函数打开文件或者 URL.如果打开失败,本函数返回 FALSE.语法fopen(filename,mode,include_path,context)创建一个文件的实例代码如下:if(!file_exists("test.txt")){ //如果文..._php fopen txt
在ES-head搭建完成后,页面可以打开,但是遇到了集群健康值未连接的问题我目前知道有两种可能的原因,一个是节点数设置错误,一个是配置问题,因为默认不允许跨域访问,所以需要我们进行设置方法一:节点设置vim /etc/elasticsearch/elasticsearch.ymlcluster.initial_master_nodes: ["node-1", “node-2”] == > cluster.initial_master_nodes: ["node-1"],节点默认是两个