• oracle基础 知识点


      oracle基础数据类型:

     1. 字符型:字符串

            varchar2(最大4000), nvarchar2(最大2000, 支持unicode)--->可变长度

     2. 数字类型
                包括整数和小数
                number(有效位数, 小数位数);
                number(11)   11位
                number(5, 3)99.999

     3. 日期类型:时间
                  date:取值范围:公元前4712年1月1号---公元9999年12月31号, 可以直接精确到秒

        4.算术运算符       注意这个地方没有取余的运算符( %) , 取余使用mod函数)

           NOT IN 等同于<>all ()
                  如果子查询作为条件时,其中有一个值为null,则尽量避免使用not in

          <>/!=(不等于) ,两种表现形式

      5.逻辑运算符(and  or  not)
              字符串连接符(||)

          6.数据库约束:

          主键约束    ( PK_nmae  ,主键起的名字)  非空, 唯一
                    一个表中只能有一个主键(某一列),

          外键约束    ( FK_name ,外键起的名字)
                唯一一个涉及两个表中的字段约束

           唯一约束(unique)  (UK_name,唯一起的名字)
                保证字段值的唯一性      与主键的区别: 唯一约束可以为空值, 唯一约束可以有多个,但是主键不可以为空

       检查约束(cheeck_ name ,检查起的名字)     定义一个值的范围

     6.常用关键字

    select t.*, t.rowid from YUAN t
    ALTER TABLE yuan ADD sfzh NUMBER   --给表格添加列
    SELECT s.* FROM yuan s --打印所有信息
    SELECT s.sname,s.sage FROM yuan s --从中打出名字,年龄的信息,后面的表名可以起一个别名
    SELECT s.* FROM yuan s WHERE s.sage>24 --打印出年龄大于24的所有的信息
    INSERT INTO yuan(ID , sname,sage)VALUES (106,'小黑',24);--指定添加的部分
    COMMIT;  --提交
    INSERT INTO yuan VALUES (107,'小赵',21,SYSDATE,NULL,NULL); --所有的信息都添加,SYSDATE,系统默认时间
    COMMIT;
    UPDATE yuan s SET s.sage = 26 WHERE s.id = 102; --更新数据
    COMMIT;
    DELETE yuan s WHERE s.id = 105;  --删除数据
    COMMIT;
    

    SELECT y.* FROM yuan y
    SELECT y.* FROM yuan y WHERE y.id IN (101,107,106) --某个范围里的任意值
    SELECT * FROM yuan y WHERE y.sname LIKE '%赵'  --%表示任意几个字符,包括啥也没有,
    SELECT * FROM yuan y WHERE y.sname LIKE '小_'  -- _表示单个字符  
    SELECT * FROM yuan y ORDER BY y.sage ASC --正序(默认)
    SELECT * FROM yuan y ORDER BY y.sage DESC --desc倒序
    SELECT * FROM yuan y ORDER BY  y.cid DESC ,y.sage ASC --先根据id排列,后再根据sage排列
    SELECT * FROM yuan y ORDER BY 3,4    --索引是从1开始的,查询结果(*),按照列看索引
    SELECT y.id,y.birthday FROM yuan y GROUP BY y.id,y.birthday  --按某几列分组
    SELECT y.id ,y.sage FROM yuan y GROUP BY y.id,y.sage ORDER BY y.id --按照某几列分组 
    SELECT y.id ,COUNT(1) FROM yuan y GROUP BY y.id--count 是计数的意思
    SELECT y.id,COUNT(1) FROM yuan y GROUP BY y.id 
    HAVING COUNT (1)=1 ----having关键字是用在group by之后对分组信息的过滤
    --过滤出来计数等于1的id项
    SELECT y.sname 名字,
    --CASE y.sex WHEN 1 THEN '女'WHEN 2 THEN '男'END 性别  --case...when...---类似于分支
      CASE WHEN y.sex = 1 THEN '女' ELSE '男' END 性别  -- case ... when ....then ...else...end  别称
     FROM yuan y 
     SELECT DISTINCT  y.cid FROM yuan y --去重,查看到底有几个部门
    SELECT * FROM yuan y WHERE y.sage BETWEEN 22 AND 27  --闭合区间, 即包括前面的数, 也包括后面的数
    
     SELECT * FROM yuan y WHERE y.birthday
      BETWEEN to_date ('20171101','yyyymmdd') AND to_date ('20171201','yyyymmdd')
    SELECT * FROM yuan y
     WHERE y.sage >= ALL(SELECT y.sage FROM yuan y ) --all,所有元素,取年龄的最大值
     SELECT * FROM yuan y
     WHERE y.sage <= ANY(SELECT y.sage FROM yuan y ) --any/some---表示一个集合中任意一个元素
     --取的是所有的数据
    
  • 相关阅读:
    【译】.NET 的新的动态检测分析
    【译】Visual Studio 的 Razor 编辑器的改进
    【译】.NET 5. 0 中 Windows Form 的新特性
    MySQL InnoDB 索引(Index)
    MySQL 全文检索(Full-Text Search)
    MySQL 计算最大值、最小值和中位数
    MySQL 触发器(Triggers)
    MySQL 视图(View)
    MySQL基础知识:MySQL String 字符串处理
    MySQL基础知识:MySQL Connection和Session
  • 原文地址:https://www.cnblogs.com/zuo72/p/8007151.html
Copyright © 2020-2023  润新知