美文网首页
oracle 常用查询语言

oracle 常用查询语言

作者: b470b9fc7145 | 来源:发表于2018-07-11 20:08 被阅读20次

SQL- Data Query Language

1. select
2. where
3. distinct
4. Operators
  • 算数
+,-,*,/ 
  • 关系
=,<,>,<=,>=,<>,!=,^=
  • 逻辑&&bool
AND,OR,NOT 
  • 集合操作
UNION,UNION ALL,INTERSECT, MINUS 

- The UNION operator returns the records retrieved by either of the queries 
- By default, the UNION operator eliminates duplicate records 
- To retain duplicates, we use UNION ALL instead of UNION 
- The INTERSECT operator returns those rows which are retrieved by both the queries 
- The MINUS operator returns all rows retrieved by the first query but not by the second query 

  • 其他
IN, BETWEEN, LIKE , IS NULL 
  • 排序
order by
5. Single Row Functions
  • 数字

NVL :将null 转成需要的值,TD 使用的是coalesce

SELECT sal + NVL( comm, 0 ) FROM emp;

ABS: 绝对值


SELECT ABS( -10 ) FROM dual;
o/p: 10

CEIL:往上取整数

SELECT CEIL( 23.2 ) FROM dual;

o/p: 24

floor:往下取整数

SELECT FLOOR( 56.99 ) FROM dual; 

o/p: 56

MOD: 取模

SELECT MOD( 5, 2 ) FROM dual; 

o/p: 1

POWER:幂

SELECT POWER( 3, 2 ) FROM dual: 

o/p: 9

ROUND:四舍五入

SELECT ROUND( 52.5 ) FROM dual; 

o/p: 53

SQRT:开方

SELECT SQRT( 4 ) FROM dual; 

o/p: 2

TRUNC:保留小数位数

SELECT TRUNC( 56.223, 1 ) FROM dual; 

o/p : 56.2

SIGN:判断正负

SELECT SIGN( -10 ), SIGN( 0 ), SIGN( 10 ) FROM dual;

o/p -1 0 1
  • 字符串
    CONCAT:拼接
SELECT CONCAT( ename, job ) FROM emp;
-- teradata 用的是||

UPPER(大写), LOWER(小写), INITCAP(首字母大写)

SELECT UPPER( ename ), LOWER( ename ), INITCAP( ename )  FROM emp;

RPAD, LPAD:左右拼接

SELECT LPAD( ename, 30, '*' ), RPAD( ename, 30, '-' ) FROM emp;

LTRIM,RTRIM:左右裁剪

SELECT LTRIM( ename ), RTRIM( ename ) FROM emp;

-- teradata 默认是trim 左右所有的空格,有多个也会清除掉

LENGTH:长度

SELECT LENGTH ( ename ) FROM emp;

INSTR:位置

SELECT INSTR( ename, 'S', 1 ) FROM emp;

SUBSTR:截取字符串

SELECT SUBSTR( ename, 1, 3 ) FROM emp;

SOUNDEX:发音一样的

SELECT ename FROM emp WHERE SOUNDEX( ename ) = SOUNDEX( 'SMEETH' );
  • 时间

TO_CHAR:转成字符串

SELECT TO_CHAR( hiredate, 'day-month-year' ) FROM EMP;

ADD_MONTHS:增加月份

SELECT ADD_MONTHS( hiredate, 11 ) FROM emp;
SELECT ADD_MONTHS( hiredate, -1 ) FROM emp;-- 前一个月

MONTHS_BETWEEN:月份之间

SELECT ADD_MONTHS( hiredate, 11 ) FROM emp;

上一天:LAST_DAY

SELECT LAST_DAY( hiredate ) FROM emp;

下一天:NEXT_DAY

SELECT NEXT_DAY( hiredate, 'friday' ) from emp;

TO_CHAR(X): 制定转换字符串

SELECT TO_CHAR( 1981 ) FROM dual;

SELECT TO_CHAR( hiredate, 'YYYYMMDD' ) FROM dual;

TO_NUMBER(X): 转成数字

SELECT TO_NUMBER( '1221' ) FROM dual;

TO_DATE(X,[Y]):转换日期

SELECT TO_DATE( '12-FEB-2007' ) FROM dual;
  • 汇总函数
    SUM/AVG/COUNT/MIN/MAX
6. Group by and Having
  • group by
  • having
7. 其他函数
  • decode
  • case
8.在线分析处理函数(OLAP(Online Analytical processing) )

ROLLUP,是GROUP BY子句的一种扩展,可以为每个分组返回小计记录以及为所有分组返回总计记录。
CUBE,也是GROUP BY子句的一种扩展,可以返回每一个列组合的小计记录,同时在末尾加上总计记录。

9. 连接
  • equi join
  • non equi
  • outer
  • self

参考文档

SQL- Data Query Language

相关文章

  • oracle 常用查询语言

    SQL- Data Query Language 1. select 2. where 3. distinct 4...

  • oracle 常用查询

    查看各个表空间的使用率(包括临时表空间) 查看物理文件的大小和使用率 文件大小与水位线大小 物理文件大小与可释放的...

  • Neo4j - CQL简介

    CQL代表Cypher查询语言。 像Oracle数据库具有查询语言SQL,Neo4j具有CQL作为查询语言。 Ne...

  • Nosql-图数据库-CQL简介

    CQL简介 CQL代表Cypher查询语言。 像Oracle数据库具有查询语言SQL,Neo4j具有CQL作为查询...

  • oracle 常用指令

    oracle常用指令 表空间查询 查询表空间中对象的详细信息 重建索引 创建表空间 查询表文件是否自动扩展 优化表...

  • hibernate学习(四)

    这一章讲的是更深入的查询操作,包括各种常用的查询操作。分别用hql语言查询和标准语言查询实现。 查询所有 条件查询...

  • Oracle中查询tablespace下所有表名

    Oracle中查询表空间下所有表名 Oracle中查询表的comments Oracle中查询表中字段的comments

  • oracle和mysql的sql语法的区别和联系

    oracle数据库很多操作和mysql差不多,oracle是最早使用sql查询语言的数据库,有mysql开发经验的...

  • oracle树形结构层级查询之start with ....co

    浅谈oracle树状结构层级查询 原文地址:浅谈oracle树状结构层级查询 oracle树状结构查询即层次递归查...

  • Oracle学习之——SQL语言

    本文将为您描述Oracle学习 SQL语言,教程操作步骤: SQL语言是高级的结构化查询语言,大大减轻了用户的负担...

网友评论

      本文标题:oracle 常用查询语言

      本文链接:https://www.haomeiwen.com/subject/swrkpftx.html