Oracle中的操作符
算术操作符:
无论是在sqlserver,或者是java中,每种语言它都有算术操作符,大同小异。

Oracle中算术操作符(+)(-)(*)(/) 值得注意的是:/ 在oracle中就相当于显示中的除法 5/2 = 2.5

比较操作符:

其中等号可以换成其他运算符:(后面为该操作符的单条件查询样例)

!= 不等于 select empno,ename,job from scott.emp where job!='manager'

    ^= 不等于 select empno,ename,job from scott.emp where job^='manager'

    <>不等于  select empno,ename,job from scott.emp where job<>'manager'

    <小于  select sal from scott.emp where sal<1000

    >大于 select sal from scott.emp where sal>1000

    <=小于等于 select sal from scott.emp where sal<=1000

    >=大于等于  select sal from scott.emp where sal>=1000

    in 在列表  select sal from scott.emp where sal in(1000,2000)
    时间的查询可以使用in 例如  select * from student where time in (’06-3月-09’,’08-5月-09’); 

    not in 不在列表 select sal from scott.emp where sal not in(1000,2000)

    between...and 介于..与..间

select sal from scott.emp where sal  between 1000 and 2000

not between...and 不介于..与..之间

select sal from scott.emp where sal not between 1000 and 2000

    like 模式匹配  select ename from scott.emp where ename like 'M%' (%表示任意长度的长度串)
                   select ename from scott.emp where ename like 'M_' (_表示一个任意的字符)

    is null 是否为空  select ename from scott.emp where ename is null

    is not null 不为空 select ename from scott.emp where ename is not null

逻辑操作符:

or(或)  select ename from scott.emp where ename='joke' or ename='jacky'

    and(与) select ename from scott.emp where ename='and' or ename='jacky'

    not(非) select ename from scott.emp where not ename='and' or ename='jacky'
 
集合操作符:

union(并集)       union连接两句sql语句, 两句sql语句的和 去掉重复的记录。

(select deptno from scott.emp) union (select deptno from scott.dept)

union all(并集)   接两句sql语句,两句sql语句的和不用去掉重复的记录。

(select deptno from scott.emp) union all (select deptno from scott.dept)

intersect (交集)  Intersect连接两句sql语句 取查询出来的两个集合的 共同部分。

(select deptno from scott.emp) intersect (select deptno from scott.dept)

minus (补集)      Minus 连接两句sql 语句,取查询出来的两个集合的差。
                        (select deptno from scott.emp) minus (select deptno from scott.dept)

连接操作符: (||) 用来连接连个字段,或者将多个字符串连接起来。

操作符的优先级别:算术》连接》比较》逻辑(not and or)

Oracle中的数据类型

数据类型主要有:字符 数值 日期 大对象LOB row/long row

字符类型:(varchar  varchar2  long)
    Varchar:长度不可变,最大2000个字节
    Varchar2:长度可变,最大4000个字节
    Long:长度可变  最大2G

数值类型:oracle中对int double float进行整合成  number类型。
    Number[p,s]:p表示精度,s表示小数位数。

日期类型:(date)(timestamp)
    Date类型存储日期类型,包括 年月日时分秒。
    Timestamp类型存储日期类型,包括更加精确的信息,包括地区信息,年月日时分秒。毫 秒……。

DATE数据类型的主要问题是它粒度不能足够区别出两个事件哪个先发生。ORACLE已经在DATE数据类型上扩展出来了TIMESTAMP数据类型,它包括了所有DATE数据类型的年月日时分秒的信息,而且包括了小数秒的信息。如果你想把DATE类型转换成TIMESTAMP类型,就使用CAST函数。 
  eg. SQL> SELECT CAST(date1 AS TIMESTAMP) "Date" FROM t;

Raw类型:存储二进制数据

Longraw类型:存储可变长度的二进制数据。最大可以为2G。

Oracle中的伪列
(rowid)(rownum)伪列是向数据表中插入数据时系统会自动向每条数据添加两列数据字段。

Rowid 每条记录的实际存储地址,即使记录重复这个字段也不会出现重复。
Rownum是 查询出数据后为每条记录添加的字段,他并不是真是存在,而是相当于视图一样查询出来后自动添加的一个行号。当运行select rowed,rownum from 表名;就可以查看这几数据。

Oracle中的sql语句。Sql语句是通用的数据库语言
Sql命令包括 (DDL)(DCL)(DML)(TCL)
DDL:数据定义语言  包括 Create语句,drop语句,alter语句。
DCL: 数据控制语言  包括 grant语句。 Revoke语句
DML:数据控制语言  包括 增,删,改,查语句。
TCL:事物控制语言  包括  commit,rollback,savepoint
Sql中的函数

Sql函数包括:(单行函数)(分组函数)(分析函数)

单行函数:

对于从表中查询出来的每条记录只显示一个数据。单行函数可以出现在select子句中,where子句中。单行函数包括:(字符函数)(数字函数)(日期函数)(转换函数)(其他函数)。

日期函数:对日期进行计算 显示日期类型或者数字类型。

SYSDATE    当前日期和时间
    current_date    返回当前会话时区中的当前日期

current_timestamp    以timestamp with time zone数据类型返回当前会话时区中的当前日期

dbtimezone    返回时区
    ADD_MONTHS    加上月数
    MONTHS_BETWEEN    返回两个日期之间月数
    LAST_DAY    返回月的最后一天
    ROUND    将月数四舍五入
    NEXT_DAY    指定下一个星期几的日期
    TRUNC    日期的格式转换
    EXTRACT    提起日期中指定的部分

字符函数:
    Initcap(char)  大写首字母。
    Lower(char)  将大写字符变成小写。
    …
详见:http://blog.sina.com.cn/s/blog_4b3c1f950100pkhv.html

数字函数
    Mod(m,n)   m/n 的余数。
    Power(m,n)   m的n次方。
    Round(m,n)    m是小数,n是取的小数位数。四舍五入
    Trunc(m,n)    m是小数,n是取的小数位数。不四舍五入

转换函数
    To_char 转化字符。
    To_date  转换日期。
    To_number  转换数字

详见:http://blog.sina.com.cn/s/blog_4b3c1f950100pk54.html

其他函数
    NVL(表达式1,表达式2)
        如果表达式1为null,返回表达式2,否则返回表达式1;
        如果表达式类型不一致,Oracle将表达式2转换为表达式1的类型
    NVL2(表达式1,表达式2,表达式3)
        如果表达式1为空,返回表达式3的值,否则返回表达式2的值
    NULLIF(表达式1,表达式2)
        如果两表达式相等,返回空值,否则返回表达式1

聚合函数
    Avg ()取平均数。
    Count ()返回查询出来的数据。
    Sum ()取和
    Max ()取最大值
    Min ()取最小值

Group 和 having
SELECT p_category, MAX(itemrate) FROM itemfile GROUP BY p_category;

SELECT p_category, MAX(itemrate) FROM itemfile GROUP BY p_category
HAVING p_category NOT IN ('accessories');

SQL操作符的更多相关文章

  1. oracle学习笔记(五) SQL操作符

    SQL操作符 算术操作符:+加,-减,*乘,/除 比较操作符: <,>,=,!=,<>,<=,>= 常用的判断,<>和!=相同 between $low ...

  2. Oracle中的sql操作符 和分析函数

    Oracle中的操作符算术操作符:无论是在sqlserver,或者是java中,每种语言它都有算术操作符,大同小异. Oracle中算术操作符(+)(-)(*)(/) 值得注意的是:/ 在oracle ...

  3. SQL操作符、通配符等

    一.通配符 常用模糊查询:% SELECT * FROM TB_Name WHERE FIELD LIKE pattern   SELECT * FROM Persons WHERE name LIK ...

  4. SQL操作符的优化

    操作符优化        IN 操作符 用IN写出来的SQL的优点是比较容易写及清晰易懂,这比较适合现代软件开发的风格. 但是用IN的SQL性能总是比较低的,从ORACLE执行的步骤来分析用IN的SQ ...

  5. 操作符及SQL函数

    本节要点: 掌握 SQL 操作符 l  算术操作符 l  比较操作符 l  逻辑操作符 l  集合操作符 l  连接操作符 l  操作符的优先级 掌握并熟练应用SQL 函数 l  日期函数 l  字符 ...

  6. Oracle学习笔记三 SQL命令

    SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)  

  7. oracle PL/SQL(procedure language/SQL)程序设计(续集)之PL/SQL函数

    PL/SQL函数 examples:“ 构造一个邮件地址 v_mailing_address := v_name||CHR(10)||                                 ...

  8. 四、oracle基本sql语句和函数详解

    一.oracle常用数据类型 一.  数据定义语言(ddl) 数据定义语言ddl(data definition language)用于改变数据库结构,包括创建.更改和删除数据库对象. 用于操纵表结构 ...

  9. Oracle DBA常用SQL

    监控SQL 1.监控事例的等待: select event,sum(decode(wait_time,0,0,1)) prev, sum(decode(wait_time,0,1,0)) curr,c ...

随机推荐

  1. highlight.js 代码高亮插件

    官网:https://highlightjs.org/ API:http://highlightjs.readthedocs.org/en/latest/api.html 1. 简单使用: <l ...

  2. ORACLE 11gR2 DG(Physical Standby)日常维护02

    环境:RHEL 6.5 + Oracle 11.2.0.4 三.监控DG的状态 3.1监控DG备库的状态 3.2监控主库传输日志链路的状态 四.备库切换为snapshot standby 4.1备库切 ...

  3. CentOS7使用firewalld打开关闭防火墙与端口

    1.firewalld的基本使用 启动: systemctl start firewalld 查看状态: systemctl status firewalld  停止: systemctl disab ...

  4. 数百个 HTML5 例子学习 HT 图形组件 – 3D 建模篇

    http://www.hightopo.com/demo/pipeline/index.html <数百个 HTML5 例子学习 HT 图形组件 – WebGL 3D 篇>里提到 HT 很 ...

  5. C#获取硬盘序列号的问题求助

    具体问题是这样的:我用下面这段获取硬盘型信息的代码做成的exe文件,在机子上测试的时候,出现直接双击运行和用管理员身份运行结果不一样的情况,这个问题该怎么解决? public static Strin ...

  6. 在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(三)

    (三) 搭建Windows Azure Pack环境 1安装SQL SERVER 2012 服务器 为简单起见,本例直接使用了Azure提供的具有SQLServer的Win2012 Server镜像来 ...

  7. java的原子性操作有哪些

    Java中的原子操作包括:1)除long和double之外的基本类型的赋值操作2)所有引用reference的赋值操作3)java.concurrent.Atomic.* 包中所有类的一切操作coun ...

  8. Jmeter3.0发布,版本更新都更新了什么

    Jmeter已发布了3.0,一个大版本的开源测试工具,加入了一些新的特性及软件的改进. Jmeter已隔10年的大版本更新 这是在过去12年里jmeter第一个大版本的更新,jmeter 2.0版本发 ...

  9. C#通过反射给对象赋值

    class Program { static void Main(string[] args) { UserSearchRequest model = new UserSearchRequest() ...

  10. 检索Google Maps地图位置(小训练)

    名称:检索地图位置 内容:地图初期显示和检索显示 功能:根据条件检索地图的经度与纬度 1.在这之前我们需要创建一个表(Accoun__c),添加一个重要的字段地理位置情報,它会默认的给你两个字段经度和 ...