Oracle Database的基本概念面试
是一个数据管理系统,它提供开放的,全面的,近乎完整的信息管理sql
一个Oracle实例数据库
一个Oracle数据库组成express
位于硬盘上实际存放数据的文件,这些文件组织在一块儿,成为一个逻辑总体,即为Oracle数据库。所以在Oracle看来,数据库是指硬盘上文件的逻辑集合,必需要与内存里实例合做,才能对外提供数据管理服务服务器
Oracle实例数据结构
位于物理内存里的数据结构,它由一个共享的内存池和多个后台进程所组成,共享的内存池能够被全部进程访问,用户若是要存取数据库(也就是硬盘上的文件)里的数据,必须经过实例才能访问,不能直接读取硬盘上的文件。学习
实例能够操做数据库,在任什么时候刻一个实例只能与一个数据库关联,大多数状况下,一个数据库只有一个实例对其进行操做。spa
表空间由多个数据文件组成,逻辑概念.net
数据文件只能属于一个表空间,物理概念排序
段存在于表空间中
段是区的集合
区是数据块的集合
数据块会被映射到磁盘块
1. 书写select语句
2. 返回表中的所有数据
3. 返回表中指定列的数据
4. 使用别名
5. 使用sql*plus环境,书写,保存和执行sql语句和sql*plus命令
语句格式:(读完本节后就能看懂啦,亲)
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table;
SQL语句大小写不敏感
SQL能够写在一行或多行
关键字不能被缩写也不能被分行
各子句通常要分行写
使用缩进提供语句的可读性
select 标识选择那些列
选择所有列*
选择特定列,指定列名
选择表达式
+ - * /
from 标识从那个表中选择
下图为基于那张表
J 重命名一个列
J 便于计算
J 紧跟列名,也能够在列名和别名之间加入关键字as,别名使用双引号,以便在别名中包含空格和特殊字符并区分大小写(面试有的时候会问到,使用双引号和不使用的)
J as能够省略
使用别名
J 把列于列,列与字符链接在一块儿
J 用“||”表示
J 能够用来合成列
记得终止只组合成了一列
J 字符串能够是select列表中的一个字符,数字,日期
J 日期和字符只能在单引号中出现
J 每当返回一行,字符串被输出一次
默认状况下,查询返回所有行,包括重复行
删除重复行,在select子句中使用关键字“distinct”删除重复行
desc简写
describe 表名
SQL语句对比SQL*Plus |
|
一种语言 |
一种环境 |
ANSI标准 |
Oracle的特性之一 |
关键字不能缩写 |
关键字能够缩写 |
使用语句控制数据库中的表的定义信息和表中的数据 |
命令不能改变数据库中的数据值 集中运行 |
功能 |
描述表结构 |
编辑SQL语句 |
执行SQL语句 |
将SQl保存在文件中并将SQL语句执行结果保存在文件中 |
在保存的文件中执行语句 |
将文本文件装入SQL*Plus编辑窗口 |
本机上Http://localhost:5560/isqlplus/ |
经过学习完本节,要掌握以下功能
使用比较运算符
操做符 |
含义 |
= |
等于(不是==,赋值使用:=符号) |
> |
大于 |
>= |
大于,等于 |
< |
小于 |
<= |
小于,等于 |
<> |
不等于(也能够是!=) |
使用between and,in,like和null运算
操做符 |
含义 |
between…and… |
两个值之间(包含边界) |
in(set) |
等于值列表中的一个 |
like |
模糊查询 |
is null |
空值 |
使用逻辑运算符and,or和not
操做符 |
含义 |
and |
逻辑并 |
or |
逻辑或 |
not |
逻辑否 |
优先级 |
|
1 |
算术运算符 |
2 |
链接符 |
3 |
比较符 |
4 |
is null,like,not in,in |
5 |
between |
6 |
not |
7 |
and |
8 |
or |
asc(ascend) |
升序 |
desc(descend) |
降序 |
order by子句在select语句的末尾
排序的规则 |
|
1 |
能够按照select语句中的列名排序 |
2 |
能够按照别名列名排序 |
3 |
能够按照select语句中的列名的顺序值排序 |
4 |
若是按照多列进行排序,则规则是先按照第一列排序,若是相同,按照第二列排序依次类推 |
5 |
desc |
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table
[WHERE condition(s)]
[ORDER BY {column, expr, alias} [ASC|DESC]];
其中
PARAMETER
----------------------------------------------------------------
VALUE
----------------------------------------------------------------
NLS_DATE_FORMAT
DD-MON-RR
NLS_DATE_LANGUAGE
SIMPLIFIED CHINESE
NLS_CHARACTERSET
ZHS16GBK
格式化:
查询结果有误
正确的查询方式:
SQL> --转意字符
SQL> rollback;
回退已完成。
and or 左边和右边,从右到左顺序执行