Oracle学习笔记(一)

2020-09-26 17:01发布

Oracle学习笔记(一)

1   什么是SQL语句?

1.  概述:

结构化查询语言 (Structured Query Language) SQL,具有定义、查询、更新和控制等多种功能,是关系数据库的标准语言。

2.  分类:

–      数据操纵语言DML Data Manipulation Language :

  • SELECT 、INSERT、 UPDATE、 DELETE

–      数据定义语言DDL Data definition language :

  • CREATE、 ALTER、 DROP、 RENAME、 TRUNCATE

–      数据控制语言DCL Data Control Language :

  • GRANT、 REVOKE

–      事务Transaction :

  • commit、 rollback、 savepoint

================================================================================

Oracle中操作数据库查看表结构的语言:(补充)

  • 查看所有表:

      SELECT TABLE_NAME FROM USER_TABLES;

  • 查看表结构:

      DESCRIBE TABLE_NAME;(或者 DESC TABLE_NAME;)

          例如:查看员工表的表结构。  DESC(RIBE) EMP;    

  • 设置一行显示多少字符:

      SET LINES NUMBER;

          例如:SET LINES 1000;

  • 设置一页显示多少行:

      SET PAGES NUMBER; 

             例如:SET PAGES 100;

  • 为表添加注释:

      COMMENT ON TABLE TABLENAME IS '用户表';

          例如:COMMENT ON TABLE EMP IS  ‘雇员表’;

  • 查看表的COMMENT :

      SELECT * FROM USER_TAB_COMMENTS WHERE TABLE_NAME='TABLENAME';

          例如:SELECT * FROM USER_TAB_COMMENTS WHERE TABLE_NAME= ’EMP’;

  • 为列添加注释

      COMMENT ON COLUMN TABLENAME.COLUMNNAME IS ‘列的注释’;

          例如: COMMENT ON COLUMN EMP.EMPNO IS ‘雇员工号’;

  • 查看字段的COMMENT

      SELECT * FROM USER_COL_COMMENTS WHERE TABLE_NAME='TABLENAME';

          例如:SELECT * FROM USER_COL_COMMENTS WHERE TABLE_NAME = ‘TABLENAME’;

3.  Oracle清屏命令:

Oracle清屏命令 3种sqlplus清屏命令:

Oracle数据库查询时如何对满屏的sql命令做清屏处理呢?很多人使用SQL*Plus,而SQL*Plus工具怎么清屏呢?

Oracle清屏命令汇集:

1、同时按SHIFT和DELETE键,然后点OK即可清屏 。

2、若在window窗口下sqlplus 中清屏命令: host  cls  或是  clear screen   或只是4位clea scre。

3、若在dos的窗口下进入sql/plus就要用clear SCR。

以上就是3种最好用的oracle清屏命令。

2   数据库操作语言(DML)之SELECT基本操作:

1.  基本语法:

SELECT *|{[DISTINCT] column|expression [alias],...}

FROM   table;

[WHERE     condition(s)]

[ORDER BY  {column, expr, alias}[ASC|DESC]];

2.  解释:

  • SELECT 标识:   选择哪些列。
  • FROM   标识:   从哪个表中选择。
  • WHEREE 标识:  条件语句。
  • DISTINCT 标识: 去除重复的列.
  • SQL 语言大小写不敏感
  • SQL 可以写在一行或者多行
  • 关键字不能被缩写也不能分行
  • 各子句一般要分行写。
  • 使用缩进提高语句的可读性。

3.  注意:

4.  运算符:

        算术运算符

操作符

含义

+

-

*

/

        代码:

        SELECT ENAME,(SAL+NVL(COMM,0))*12 FROM EMP;

5.  对于空值:

    空值是无效的,未指定的,未知的或不可预知的值

    空值不是空格或者0

    包含空值的数学表达式的值都为空值 . 解决办法:NVL(COL_NAME , NUMBER ).

    如果该列允许为空,使用 NVL(COL_NAME,NUMBER) 函数可以解决该问题,NUMBER 将代替列中为空的值,而不取代该列中不为空的值。

    如下:

      SELECT ENAME ,SAL*12 FROM EMP; 

      SELECT ENAME,(SAL+COMM)*12 FROM EMP;

      SELECT ENAME,(SAL+NVL(COMM,0))*12 FROM EMP;

 

6.  列的别名:

    ①  、重命名一个列。

    ②  、便于计算。

    ③  、紧跟列名,也可以在列名和别名之间加入关键字‘AS’,别名使用双引号以便在别名中包含空格或特殊的字符并区分大小写。

7.  连接符:

  • 把列与列,列与字符连接在一起。
  • 用 ‘||’表示。
  • 可以用来‘合成’列。

  如下代码:

    SELECT ENAME||’的薪资为:’||SAL*12 FROM EMP;

注意:ENAME||’的薪资为:’||SAL*12 代表的是一列,利用连接符连接后代表的是一列的列名,对于连接的字符串来说需要使用 单引号 ’’来进行连接。

 

 

8.  字符串:

  • 字符串可以是 SELECT 列表中的一个字符,数字,日期
  • 日期和字符只能在单引号中出现
  • 每当返回一行时,字符串被输出一次。

注意:对于双引号和单引号在何时使用?

在别名时这一块来使用双引号,而对于字符串只能在单引号中出现,且在单引号中的字符区分大小写。

 

标签: