2016-12-01 Oracle数据库基本查询(1)

一.Oracle简介
  1.安装注意的一些问题,简单见文档.

二.SQLPlus命令
   1.格式化指令
     --设置每行显示的数据长度
     SET LINESIE 300;
     --设置每页显示的行数
     SET PAGESIZE 30;
    2.ed文件编辑命令,然后使用/执行修改之后的SQL指令;
    3.了解什么叫阻塞状态:打开ed编辑不能再SQL命令窗口输入指令;
    4.切换用户:
      CONN 用户/密码 [AS SYSDBA];--如果是sys用户需要增加[AS SYSDBA]指令;
    5.清屏指令:host cls;

三.SQL简介与数据表分析
    1.SQL分类:
       1>.DML:主要是指的是数据库的查找与更新操作.
       2>.DDL:主要是指的数据库对象的创建表.
       3>.DCL:主要是指进行权限管理操作的指令.
    2.一些基本的操作:
      --查询一个表下的所有数据
        SELECT * FROM emp;
      --查询一个表的结构
        DESC 表名称;
      --根据每一个列设置固定的长度
        COL ename FOR A10;

五.简单查询
    1.简单查询就查询一个表中的所有数据
    2.语法格式:
      ② SELECT [DISTINCT]*| 列名称 [别名],列名称[别名],...
      ① FROM 表名称[别名];
    3.定义别名的情况:SELECT empno,job,sal*12 income FROM emp;--不建议使用中文的形式
    4.设置一些常量:
       1>.常量是字符串的情况:使用单引号进行声明,例如:'hello';
       2>.如果常量是数字:直接进行编写:例如:10;
       3>.如果常量是日期,则按照日期的格式编写:使用"XX日-XX月-XX年",例如:'17-12月-80';
       4>.使用'||'连接查询结果;

六.SQL限定查询
    1.通过WHERE字句来限定查询的行数;
    2.语法格式:
      ③ SELECT [DISTINCT]*| 列名称 [别名],列名称[别名],...
      ① 确定数据来源:FROM 表名称[别名];     
      ② 确定满足条件的数据行:[WHERE 过滤条件(s)];
    3.限定查询的一些查询符号
      1>.关系运算符号:>,<,>=,<=,<>,!=;
      2>.逻辑运算符号:AND,OR,NOT;
      3>.范围运算符号:BETWEEN...AND;
      4>.谓词范围:IN,NOT IN;
      5>.空判断:IS NULL,IS NOT NULL;
      6>.模糊查询:LIKE.
    4.IN操作符:NOT IN 与 null的问题:在使用NOT IN的时候,如果返回的结果之中包含null,那么不会有任何的返回结果.
    5.模糊查询:
      1>."_"代表任意一位字符;
      2>."%"匹配任意的零位,一位或者多位字符;
   
七.插叙排序
    1.针对指定的列进行排序;
    2.语法格式:
      ③ SELECT [DISTINCT]*| 列名称 [别名],列名称[别名],...
      ① 确定数据来源:FROM 表名称[别名];     
      ② 确定满足条件的数据行:[WHERE 过滤条件(s)];
      ④ 针对查询结果进行排序:[ORDER BY 字段[ASC|DESC],字段[ASC|DESC]...];--默认情况选择是的升序排列:ASC;
    3.举例:查询所有雇员信息,按照工资的高低进行降序排列
       SELECT * FROM emp WHERE sal ORDER BY sal DESC;
    4.由语法格式:ORDER BY 字句是在SELECT字句后面执行,因此可以使用别名:
       SELECT empno,ename,sal*12 income ORDER BY income;
    5.ORDER BY字句可以设置多个排序字段.
       SELECT * FROM emp ORDER BY sal DESC,hirdate ASC;

八.综合实战

九.单行函数
    1.SQL语句+单行函数
    2.字符串函数
      1>.字符串 UPPER(列|字符串):将传入的字符串变为大写字母形式;
      2>.字符串 LOWER(列|字符串):将传入的字符串变为小写字母形式;
      3>.字符串 INITCAP(列|字符串):将首字母大写,其他的字母全部变为小写;
      4>.数字 LENGTH(列|字符串):取得指定字符串的长度;
      5>.字符串 SUBSTR(列|字符串,开始索引,[长度]):进行字符串截取,如果没有设置长度表示从开始索引一直索引一直截取到结尾.
      6>.字符串 REPLACE(列|字符串,旧内容,新内容):将指定字符串的数据以新数据替换旧数据内容.
    3.Oracle实现数据的输入操作,可以使用替代变量的形式完成;
      SELECT * FROM emp WHERE ename = UPPER('&inputname');
    4.数值函数
      1>.数字 ROUND(列|数字 [,小数位]):实现数据的四舍五入,可以设置保留小数位;
      2>.数字 TRUNC(列|数字 [,小数位]):实现数据的截取,即:不进位;
      3>.数字 MOD(列|数字,列|数字):求模(计算余数);
    5.日期函数
      1>.伪列:SYSDATE:--表示日期;
      2>.日期处理函数:
         ① 日期 ADD_MONTHS(列|日期,月数):在指定的日期上增加若干个月之后的日期;
         ② 数字 MONTHS_BETWEEN(列|日期,列|日期):返回两个日期之间的所经历的月数;
         ③ 日期 LAST_DAY(列|日期):取得指定日期所在月的最后一天;
         ④ 日期 NEXT_DAY(列|日期,星期X):返回下一个指定的一周时间数对应的日期;
    6.转换函数
      1>.字符串 TO_CHAR(列|日期|数字,转换格式):将日期或数字格式化为指定的结构的字符串;
      2>.日期 TO_DATE(列|字符串,转换格式):按照指定的转换格式编写字符串后将其变为日期型数据;
      3>.数字 TO_NUMBER(列|字符串):将字符串变为数字;
    7.通用函数
      1>.数字 NVL(列|NULL,默认值):将传入的内容是null,则使用默认数值处理,如果不是空则使用原始数值处理;
      2>.数据类型 DECODE(列|字符串|数值,比较内容1,显示内容1,比较内容2,显示内容2...,
      [,默认显示内容])

posted on 2016-12-01 22:50  G-X  阅读(172)  评论(0)    收藏  举报