• Oracle 表操作(三)


    增删改查  交并补  内连接  外连接

    创建表:

        create table table_name(
          num int IDENTIFIED(1,1) not null,  --identified自增量
          name VARCHAR2(20) not null,       --not null不为空
          age VARCHAR2(20),
          sex VARCHAR2(2)
        )

    新增列:

        alter table table_name

        add col_name data_type

    删除列:

        alter  tabel table_name

        drop column col_name

    修改列:

        alter table table_name

        alter column col_name data_type

    插入 insert  语句

    给指定列插入数据:

        insert into table_name(deptno,dname) values(50,'xx');
    插入全部列数据:

        insert into dept(deptno,dname,loc) values(60,'xx','lll');

               insert into dept values(70,'xxx','llll');   插入值包含所有字段是可省略字段名

     批量插入:(新表需要预先创建好)

        insert into table_name1 (col_name1,col_name2)  --表1列名

        select column1,column2                                     --表2列名

        from table_name2  where search_condition          --约束条件

    使用insert······into批量插入:(新表不需要预先创建好)

        select col_name1,col_name2

        into new_table

        from table_name

        where search_condition

    更新 update  语句

      更新指定数据:update table_name set col_name='new_data' where deptno=50;
     

    删除 delete  语句

    删除指定数据:delete from table_name where condition=70;

    delete 删除数据库中的数据,drop删除表结构

    delete删除行数据,drop删除列

    查询 select  语句

    查询所有:select * from emp;
    指定字段查询:select col_name1,col_name2 from table_name;
    加 where 条件:select * from emp where sal>=800; select * from table_name where sal>=1500 and job='SALESMAN';


    Distinct 去重复记录: select distinct col_name from table_name;
    Group by 分组查询:select job,count(ename) as num from EMP t group by job;
    Having 过滤分组:select job,count(ename) as num from EMP t group by job having count(ename)>=2;
    Order by 排序:select * from emp order by sal desc;   

    Order by子句一定放在所有句子的最后(不论包含多少子句)
    子查询:查询出基本工资大于平均工资的员工:select * from emp where sal>(select avg(sal) from emp)

    asc顺序查询   desc 逆序查询,只作用最近的列,多列逆序需要多个desc
    联合查询:
    并集(去重复):
        select * from t_user1
        union
        select * from t_user2;

    并集:
        select * from t_user1
        union all
        select * from t_user2;
    交集:
        select * from t_user1
        intersect
        select * from t_user2;
    差集:
        select * from t_user1
        minus
        select * from t_user2;
    内连接:
    select * from emp t,dept d where t.deptno=d.deptno;
    类似:select * from emp e inner join dept d on e.deptno=d.deptno; inner 可以省略;
    外连接:
    左外连接:select * from emp e left join dept d on e.deptno=d.deptno;
    右外连接:select * from emp e right join dept d on e.deptno=d.deptno;

  • 相关阅读:
    HDFS入门详解
    Linux find example
    你想建设一个能承受500万PV/每天的网站吗?服务器每秒要处理多少个请求才能应对?
    find 与 tar命令连用
    莫名其妙的主机名 VM_32_234_centos
    hadoop Safe mode is ON 的解决办法
    Does not contain a valid host:port authority: Master:8031 (configuration property 'yarn.resourcemanager.resource-tracker.address')
    Equals 和 == 的区别--转
    线程间操作无效: 从不是创建控件的线程访问它。
    C# EventHandler委托事件小结--百度
  • 原文地址:https://www.cnblogs.com/hefeisf/p/4978346.html
Copyright © 2020-2023  润新知