• Oracle 基本知识回顾


    1.查找数据库所用的字符集编码:SELECT USERENV('language') FROM DUAL;
    2.将一个表中的字段,插入到这个表:INSERT INTO TABLE SELECT * FROM TABLE WHERE ID=31;
    3.union:返回不重复的行
    4.union all:返回所有行,包含重复的行
    5.|| 链接操作符(合并字符串)
    6.translate(expr, from_strimg, to_string):字符串替换函数
    7.concat:链接字符串
    8. 

       abs(n)	取绝对值
      ceil(n)	向上取整
      floor(n)	向下取整
      round(m,n)	四舍五入
      trunc(m,n)	截断
      power(m,n)	m的n次幂
      sign(n)	取符号
      mod(m,n)	取m%n的结果

    9.查询今天是周几

    SELECT SYSDATE ,SYSDATE-1,TO_CHAR(SYSDATE-1, 'd'),TO_CHAR(SYSDATE, 'day') FROM DUAL;

    10,一周的数据 

    SELECT TO_char(SYSDATE,'yyyy-MM-dd'),TO_CHAR(SYSDATE, 'day') FROM DUAL UNION ALL
    SELECT TO_char(SYSDATE+1,'yyyy-MM-dd'),TO_CHAR(SYSDATE+1, 'day') FROM DUAL UNION ALL
    SELECT TO_char(SYSDATE+2,'yyyy-MM-dd'),TO_CHAR(SYSDATE+2, 'day') FROM DUAL UNION ALL
    SELECT TO_char(SYSDATE+3,'yyyy-MM-dd'),TO_CHAR(SYSDATE+3, 'day') FROM DUAL UNION ALL
    SELECT TO_char(SYSDATE+4,'yyyy-MM-dd'),TO_CHAR(SYSDATE+4, 'day') FROM DUAL UNION ALL
    SELECT TO_char(SYSDATE+5,'yyyy-MM-dd'),TO_CHAR(SYSDATE+5, 'day') FROM DUAL UNION ALL
    SELECT TO_char(SYSDATE+6,'yyyy-MM-dd'),TO_CHAR(SYSDATE+6, 'day') FROM DUAL;

    11,to_char 操作时间格式

    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'D') FROM dual;--  一周中的星期几     
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'DAY') FROM dual;-- 天的名字,使用空格填充到9个字符     
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'DD') FROM dual;-- 月中的第几天     
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'DDD') FROM dual;-- 年中的第几天     
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'DY') FROM dual;-- 天的简写名     
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'IW') FROM dual;-- ISO标准的年中的第几周     
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'IYYY') FROM dual;--  ISO标准的四位年份     
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'YYYY') FROM dual; -- 四位年份      
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'HH') FROM dual; --  小时,按12小时计     
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'HH24') FROM dual; --   小时,按24小时计     
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'Mon') FROM dual;  -- 月份的简写      
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'Month') FROM dual;-- 月份的全名     
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'W') FROM dual;-- 该月的第几个星期
    SELECT to_char(TO_DATE('2019/4/22 13:42:14', 'yyyy-MM-dd HH24:mi:ss'),'WW') FROM dual; -- 年中的第几个星期

     当前系统时间的下一星期一的时间

      select   next_day(sysdate,1)   from   dual  

    NEXT_DAY(date,char) 
    date参数为日期型, 
    char:为1~7或Monday/Mon~Sunday/ 
    指定时间的下一个星期几(由char指定)所在的日期, 
    char也可用1~7替代,1表示星期日,2代表星期一。。。。 
    还可以是星期一、星期二。。。星期日 

    12.查询当前用户下的所有表

    select table_name from user_tables;
    

    13.表的操作

    SELECT * FROM USER_tab_COMMENTS; -- 查询当前用户下所有的表
    SELECT * FROM User_Col_Comments;-- 用户所有的表的列信息
    
    ALTER TABLE kecheng RENAME TO CHENGJI;--给表重命名
    
    ALTER TABLE chengji ADD state1 VARCHAR2(10) ;-- 添加字段
    
    ALTER TABLE chengji DROP COLUMN state1; -- 删除字段
    
    ALTER TABLE chengji RENAME COLUMN state TO hh;-- 修改字段名称  
    
    ALTER TABLE chengji MODIFY HH varchar2(10); -- 修改字段类型 alter table 表名 modify (字段名 字段类型 默认值 是否为空);
    
    COMMENT ON COLUMN chengji.id IS '学生ID'; -- 列加注释
    COMMENT ON TABLE chengji IS  '学生成绩表';-- 表加注释

    14.数值型常用函数

    --1 ceil 返回大于等同于n的最小整数
    SELECT ceil(10.6) FROM dual;
    --2 floor 小于等于n的最大
    SELECT FLOOR(10.6) FROM dual;
    --3 mod(m,n) m除于n的余数,若n等于0 返回m
    SELECT MOD(5,0) FROM dual; 
    --4 power(m,n) m的n次方
    SELECT power(5,3) FROM dual;
    --5 round(m,n) 将m四舍五入,保留小数点后n位
    SELECT round(5.64473411,1) FROM dual;
    --6 sign(n)若n=0返回0,若n>0 返回1 否则返回-1
    SELECT SIGN(-5) FROM dual;
    --7 sqrt(n) n的平方根
    SELECT sqrt(5) FROM dual;
    

      

  • 相关阅读:
    POJ-1751 Highways---确定部分边的MST
    ZOJ-1586 QS Network---最小生成树Prim
    POJ-1861 Network---最小生成树
    ZOJ-1203 Swordfish---最小生成树
    POJ-3026 Borg Maze---BFS预处理+最小生成树
    POJ-1258 Agri-Net---MST裸题Prim
    Android异常与性能优化相关面试问题-ANR异常面试问题详解
    Android异常与性能优化相关面试问题-OOM异常面试问题详解
    热门前沿知识相关面试问题-android插件化面试问题讲解
    初始化对于类与接口的异同点深入解析
  • 原文地址:https://www.cnblogs.com/wangjianly/p/10693967.html
Copyright © 2020-2023  润新知