数据库——Oracle(2)

1 插入语句(insert):
  1) 往表中所有的列值都插入列值
    SQL> desc person2;
      名称
      ID
      NAME
    案例:往person2表中任意的插入3条数据
      insert into person2 values(10,'刘备');
      insert into person2 values(11,'曹操');
      insert into person2 values(12,'张辽');
      SQL> desc person3;
        名称
        ID
        NAME
        JOB
    往person3中插入任意的3条数据
      insert into person3 values(10,'钱钟书','文学家');
      insert into person3 values(11,'李清照','词人');
      insert into person3 values(12,'郭沫若','作家');
  2) 往指定的列插入列值
    格式:
      insert into 表名(列名1,列名2,列名3...)
      values(列值1,列值2,列值3...)
    a) 表名()中列名必须要跟values中列值一一对应。
    b) 必须要给主键所在的列插入列值。
      SQL> desc person4;
        名称
        ID
        NAME
        ADDRESS
        AGE
      insert into person4(id) values(1);
      insert into person4(id,name) values(2,'张无忌');
      往person4表任意插入3条数据
      insert into person4(id,address) values(10,'常遇春');
      insert into person4(id,name,age) values(11,'李文忠',27);
      insert into person4(id,age) values(12,39);

2 修改语句(update):
  格式:
    update 表名 set 列名1 = 该列新值,列名2 = 该列新值...
    where 条件
    根据where条件修改表中的数据,如果没有where条件,修改表中所有的数据。
    ID   NAME    ADDRESS    AGE
    1
    2     张无忌
    10   常遇春
    11   李文忠            27
    12                 39
    update person4 set name = '徐达',address = '漠北'
    where id = 10;
  案例:修改person4表中年龄是39岁信息,把name改为武则天,地址改为长安,年龄改为20
    update person4 set name = '武则天',address = '长安',age = 20
    where age = 39;
  案例:修改person4表中姓名是李文忠的信息,把年龄改为30,地址改为北京,id改为20
    update person4 set age = 30,address='北京',id=20
    where name = '李文忠';
  案例:修改person4表中所有人的年龄都改为30
    update person4 set age =30;
    ID NAME JOB
    --- ------------------------ ------
    10 钱钟书 文学家
    11 李清照 词人
    12 郭沫若 作家
  案例:修改person3表中job是作家的信息,把姓名改为冰心,id改为20
    update person3 set name = '冰心',id = 20
    where job = '作家';
  案例:修改person3表中姓名是李清照,把编号改为100,姓名改为辛弃疾
    update person3 set id = 100,name = '辛弃疾'
    where name = '李清照';

3 删除语句
  1)delete删除
    格式:
      delete from 表名 where 条件
      根据where条件删除对应表中的数据,如果没有where条件删除表中所有的数据。
    案例:删除person3表中姓名是辛弃疾的信息
      delete from person3 where name = '辛弃疾';
    案例:删除person3表中职位是作家的信息
      delete from person3 where job = '作家';
    案例:删除person3表中编号id是10的信息
      delete from person3 where id = 10;
    案例:删除person2中所有的数据
      delete from person2;
  2) truncate删除:直接删除表中所有的数据,速度很快,并且删除的数据不能在被还原。
    truncate table 表名
    truncate table person1;
    案例:删除person4表中所有的数据
      truncate table person4;

4 删除表:
  drop table 表名;
  drop table person4;
  案例:删除person1,person2,person3
    drop table person1;
    drop table person2;
    drop table person3;

5 简单没有条件的查询语句
  1)查询表中所有的数据
    格式:
      select * from 表名
    案例:查询emp,dept,salgrade表中所有的数据
      select * from emp
      select * from dept
      select * from salgrade
  2)查询表中某些列的所有列值
    格式:
      select 列名1,列名2,列名3...from 表名
      select empno,ename,sal from emp
    案例:查询emp表中员工的姓名,职位,工资,入职时间
      select ename,job,sal,hiredate from emp
    案例:查询emp表中员工的编号,姓名,工资,奖金以及入职的时候和所属部门的编号
      select empno,ename,sal,comm,hiredate,deptno
      from emp
    案例:查询dept表中部门的名称和地址
      select dname,loc from dept

6 distinct :去掉重复的列值
  案例:查询emp表中员工所在部门的编号
    select distinct deptno from emp
  案例:查询emp表中员工有哪些职位
    select distinct job from emp

7 别名:给表或者列起别名。
  1)给列起别名
    a)使用as
      格式:
        select 列名1 as 别名1,列名2 as 别名2...
        from 表名
        select empno as 员工编号,ename as 员工姓名,job as 职业
        from emp
      案例:查询emp表中员工的姓名,职位,工资,入职时间,上级领导编号,对查询返回的列起别名
        select ename as 员工姓名, job as 职位,sal as 工资,hiredate as 入职时间,mgr as 领导编号
        from emp
      案例:查询dept表中所有部门的信息,对查询返回的列都起别名
        select deptno as 部门编号,dname as 部门名称,loc as 部门地址
        from dept
    b)使用空格给列起别名
      格式:
        select 列名1 别名1,列名2 别名2,列名3 别名3...
        from 表名
        select empno 员工编号,ename 员工姓名,mgr 上级经理编号
        from emp
      案例:查询emp表中员工的姓名,职位,工资,奖金,入职时间,对查询返回的列起别名
        select ename 姓名,job 职位,sal 工资,comm 奖金,hiredate 入职时间
        from emp
  2)给表起别名:在多表连接查询中使用,为每一张表起别名,通过别名指向对应表中列,避免出现多张表中列名一致,无法确定到底查询的哪张表中的列。
    格式:
      select 别名.列名1,别名.列名2,别名.列名3...
      from 表名 别名
      select e.empno,e.ename,e.job,e.hiredate
      from emp e

原文地址:https://www.cnblogs.com/KalosOwen/p/8562410.html