数据库知识回顾:

sql语句的语法规范:

  1. sql语句不区分大小写,习惯上系统的保留字、关键字、函数名称大写,表名和列名小写
  2. 使用空格和换行分隔单词效果一样,一般情况下独立的整句不换行,不同的子句需要换行,where子句中每个条件占一行
  3. sql语句以分号作为分隔符,系统读取到分号才会执行语句
  4. 复杂的sql可以加上注释予以说明

--单行注释

/*

多行注释

多行注释

*/

/*
select 列名1,列名2,……列名n 定义查询数据所在的列
from 表1,表2,……表n 定义查询数据所在的表
where 限定条件1 and/or 限定条件2…… 定义查询数据的范围(行)
group by 列名1,列名2,……列名n 定义分组函数的分组方式
having 分组条件1 and/or 分组条件2…… 定义查询数据的分组条件
order by 列名1 asc/desc,列名2 asc/desc,……列名n asc/desc 定义查询数据的排序方式
*/

1. 单行函数

1) 字符函数:大小写转换,字符截取,空值判断……

2) 数字函数:向下取整,取余,四舍五入、截取

3) 日期函数:日期运算、加月份、当月最后一天、下一个星期几、系统时间

4) 转换函数:日期和字符之间的转换,数字转换字符

5) Decode函数:对不同的值给予不同的结果

6) 函数嵌套:一个函数的结果作为另一个函数的参数

2. 多表查询

1) 需要将多个表的数据显示在同一个查询结果时使用多表查询

2) 从多张表查询时需要使用连接来避免笛卡尔积

3) 查询n张表需要用到n-1个连接

4) 等值连接:表1的外键等于表2的主键

5) 不等值连接:表1的某列数据于表2的某列数据有其他比较关系

6) 自连接:本表的外键等于本表的主键

7) 外连接:不满足连接条件的数据也同样显示

3. 分组函数

1) Avg求平均值,sum求和,count计数,max求最大值,min求最小值

2) 使用group by语句对数据分组,每组数据产生一个结果

3) 出现在select语句中的普通列必须出现在group by子句中

4) Where子句可以限定分组函数计算的范围,但不能出现分组函数的条件

5) Having子句限定分组函数的条件

4. 子查询

1) 将一个查询结果作为另一个查询的条件

2) 子查询可以出现在where子句中作为限定条件,也可以出现在from后面,将查询结果作为一张表来进行查询

3) 子查询必须用括号括起来,并且在where子句中只能出现在比较运算符右侧

4) 单行子查询使用单行运算符,比较条件和查询出的数据类型及格式要一致

5) 多行子查询使用多行运算符:in,all,any

6) 多列子查询使用多列运算符:in

7) 使用rownum 进行分页查询

Oracle- 数据库知识回顾的更多相关文章

  1. Oracle 数据库知识汇总篇

    Oracle 数据库知识汇总篇(更新中..) 1.安装部署篇 2.管理维护篇 3.数据迁移篇 4.故障处理篇 5.性能调优篇 6.SQL PL/SQL篇 7.考试认证篇 8.原理体系篇 9.架构设计篇 ...

  2. Oracle数据库知识要点

    一.卸载安装(来自百度经验) 完全卸载: 1. 停止相关服务 2. 运行Universal Installer,卸载产品 3. 清理注册表 4. 重启电脑,删除目录(Oracle文件夹和app文件夹) ...

  3. Oracle 基本知识回顾

    1.查找数据库所用的字符集编码:SELECT USERENV('language') FROM DUAL;2.将一个表中的字段,插入到这个表:INSERT INTO TABLE SELECT * FR ...

  4. oracle data guard --理论知识回顾01

    之前搭建了rac到单实例的dg环境,最近又在windows下搭建了dg,这一篇关于dg的一些理论知识回顾 官方文档 https://docs.oracle.com/cd/E11882_01/nav/p ...

  5. Oracle数据库基础知识

    oracle数据库plsql developer   目录(?)[-] 一     SQL基础知识 创建删除数据库 创建删除修改表 添加修改删除列 oracle cascade用法 添加删除约束主键外 ...

  6. Oracle 数据库 基础学习 (一) SQL基本知识

    Oracle 从零开始,不知所措.要掌握一种技能,最好的方式是先学会怎么使用它,然后再深入学习,先有样子,再有技术.   一,什么是数据库? 为什么需要数据库? 数据库实质上是一个信息的列表,或者是一 ...

  7. Oracle数据库的后备和恢复————关于检查点的一些知识

    当我们使用一个数据库时,总希望数据库的内容是可靠的.正确的,但由于计算机系统的故障(硬件故障.软件故障.网络故障.进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库,使 ...

  8. ORACLE数据库 DBA常用知识

    <常用命令参考> 个系统变量值 SQL> show user --显示当前连接用户 SQL> show error --显示错误 SQL> set heading off ...

  9. Oracle数据库入门——基础知识

    1.安装完成Oracle数据库后,使用sqlplus客户端登录数据库管理系统,只输入用户名,没有输入密码时,会提示口令为空,登录被拒绝. 请输入用户名:system 输入口令: ERROR:ORA-0 ...

随机推荐

  1. .net上传大文件的解决方案

    ASP.NET上传文件用FileUpLoad就可以,但是对文件夹的操作却不能用FileUpLoad来实现. 下面这个示例便是使用ASP.NET来实现上传文件夹并对文件夹进行压缩以及解压. ASP.NE ...

  2. [Luogu] Mayan游戏

    https://www.luogu.org/problemnew/show/P1312 太恶心了 #include <cstdio> #include <algorithm> ...

  3. bzoj4152

    The Captain HYSBZ - 4152 给定平面上的n个点,定义(x1,y1)到(x2,y2)的费用为min(|x1-x2|,|y1-y2|),求从1号点走到n号点的最小费用. Input ...

  4. heartrbeat实现web服务器高可用

    今天的内容是用heartbeat实现web服务器高可用 一.简介: heartbeat的工作原理:heartbeat最核心的包括两个部分,心跳监测部分和资源接管部分,心跳监测可以通过网络链路和串口进行 ...

  5. Druid数据源监控配置

    在web.xml中添加如下代码 <!-- druid监控 --> <servlet> <servlet-name>DruidStatView</servlet ...

  6. Leetcode题目160.相交链表(简单)

    题目描述 编写一个程序,找到两个单链表相交的起始节点. 如下面的两个链表: 在节点 c1 开始相交. 输入:intersectVal = 8, listA = [4,1,8,4,5], listB = ...

  7. Ubuntu桌面版与服务器版的区别(转)

    Ubuntu桌面版vs服务器版 提到安装Linux,Ubuntu可谓是最受欢迎的.为了满足每个人的需求,出现了不少版本或风格的Ubuntu:其中两项便是桌面版与服务器版.只要发布版本号一致,这两者从核 ...

  8. HearthBuddy CSharpCodeProvider 如何编译cs文件

    源码 源码1 namespace Hearthbuddy.Windows{    // Token: 0x02000041 RID: 65    public class MainWindow : W ...

  9. kotlin if

    val max = if (a > b) { print("Choose a") a } else { print("Choose b") b } 注意和 ...

  10. ThinkPHP空操作与命名空间

    命名空间:相当于一个虚拟的目录 正常管理文件使用文件夹--物理区分 TP框架的初始命名空间是:ThinkPHP\Library 在TP框架下命名空间里面使用\代表的是初始命名空间(ThinkPHP\L ...