oracle 语法

1.基本语法:SELECT *[列名 [[AS] 别名], 列名2...] FROM 表名 [[AS] 别名];

2. 使用||做连接:Oracle中的字符串用单引号。
   例:SELECT ‘姓名:‘||ename||‘月薪‘||sal FROM emp;

3. 使用DISTINCT可以消除重复内容

4. WHERE子句:使用WHERE指定的条件对数据进行筛选,返回符合条件的记录(行)。
   SELECT *[|列名 [[AS] 别名], 列名2...]
      FROM 表名 [[AS] 别名]
      WHERE 条件;
  1) WHERE子句可以包括运算符,SQL操作符,使用(),常量,列,函数。

5. 运算符:
  1) 算术:+ - * /
  2) 比较:> >= < <= = !=(<>),
           ANY(值1,值2...) ALL(值1,值2...) 不能单独使用,要配合>,>=,<,<=来使用
  3) 逻辑:AND OR NOT

6. SQL操作符:
  1) IN(值1,值2...)
  2) LIKE ‘模式字符串‘:_代表任意一个字符,%代表0到n个字符
  3) BETWEEN 数值1 AND 数值2:不仅可用于数值,还可以用于日期时间
  4) IS NULL,IS NOT NULL:匹配空值,非空值。对于空值一定不能用=或!=
  5) IS NAN:非数字。IS NOT NAN:数字。Oralce特有

7. Oracle特有的伪列:
   1) ROWID: Oracle内部对每个表的每一行都有一个唯一的标识。
 ★2) ROWNUM: Oracle对每次查询结果集的每一行记录都有一个行号。
              对结果集的数据进行标识。不能对ROWNUM直接使用>,>=,!=,between..and..
      怎么来获取第5条到第10条的记录呢?子查询,连接查询

8. 对结果进行排序:
   SELECT *[|列名 [[AS] 别名], 列名2...]
      FROM 表名 [[AS] 别名]
      WHERE 条件
      ORDER BY 排序列名 [ASC|DESC], 排序列名 [ASC|DESC]...;

9. SQL函数:数据库管理系统(DBMS)提供的一些功能封装。不同的数据库产品所提供的函数不尽相同。
  1) 单行函数:同时只能对一行进行操作,且对于每一行返回一个值。
     聚合函数:同时对多行进行操作,这多行只返回一个值。
  2) 单行函数:
     a) 字符串:lower(char),upper(char),length(char),initcap(x)
     b) 数字:round(number,n)
     c) 日期时间:sysdate 返回数据库所在操作系统的当前日期时间。
                  systimestamp 返回数据库所在操作系统的当前时间戳。
                  last_day(d) 返回指定日期当月的最后一天的日期时间
                  trunc(d[,unit]) 截断日期时间,unit: ‘year‘, ‘month‘, ‘day‘
     d) dual表是Oracle提供给任何用户的一个表,常用在没有目标表的SELECT语句中。
     e) 转换函数:
        to_char(datatime[,format]), format: yyyy,mm,dd,hh24,mi,ss
        to_char(number[,format]), format: l, 9, ‘,‘
        to_date(char[,format]), 字符串-->日期时间
        to_timestamp(char[,format]), 字符串-->日期时间戳
        to_number(expr[,format])
     f)其它函数:
        nvl(expr1,expr2)  如果expr1为空,返回expr2的值,否则返回expr1。
        nvl2(expr1,expr2, expr3)  如果expr1不为空,返回expr2,否则返回expr3。
        decode(expr, search1,result1,search2,result2,...)
        case expr when search1 then result1
                  when search2 then result2
                  ...
                  else resultn
        end

时间: 2024-10-13 00:51:27

oracle 语法的相关文章

SQLServer、MySQL、Oracle语法差异小集锦

一.表操作语法差异 在建表的时候,只有自增的语法不同. 主键(PRIMARY KEY).外键(FOREIGN KEY).非空(NOT NULL).唯一(UNIQUE).默认值(DEFAULT)都相同,自增实现的方式不同. 下面给出3种数据库通用的建表与初始化测试语句: CREATE TABLE Country( Id int PRIMARY KEY, Name varchar(20) ); CREATE TABLE Person ( Id int PRIMARY KEY, CountryId i

ansi sql 语法 切换为 oracle 语法

? ? 语句粘贴到 工作表 打开查询构建器 勾选 创建oracle连接 over ? ? sql dev 的语法设置调整,否则表别名会右对齐 ? 下面是 转换后的结果,是不是看得舒服多了 原文地址:https://www.cnblogs.com/hlm750908/p/12180630.html

oracle语法记录

-- loop的三种形式 (1).LOOP (2).WHILE ... LOOOP (3).FOR ... LOOP 1.基本的LOOP语句 SET serveroutput ON; -- exit ... when 结束循环 DECLARE v_value NUMBER(8) := -3; BEGIN <<value_loop>> -- 循环标记 LOOP dbms_output.put_line('v_value = ' || v_value); v_value := v_va

jdbc连接oracle语法

public class LangDemo { public static void main(String[] args) throws Exception{ try { //加载驱动 Class.forName("oracle.jdbc.driver.OracleDriver"); //创建连接 Connection cn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:XE",&quo

SqlServer select * into 对应 Oracle语法

创建新表,并插入旧表值 Sql Server select * into new_emp from emp; Oracle create table new_emp as select * from emp;

[转]Oracle 语法之 OVER (PARTITION BY ..) 及开窗函数

oracle的分析函数over 及开窗函数 一:分析函数Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是 对于每个组返回多行,而聚合函数对于每个组只返回一行. 下面通过几个例子来说明其应用. 1:统计某商店的营业额. date       sale 1           20 2           15 3           14 4           18 5           30 规则:按天统计:每天都统计前面几天的总额 se

Oracle语法 及 SQL题目(三)

目录 PLSQL Developer命令行创建用户以及表 PLSQL Developer命令行创建用户以及表 老规矩,先创建用户le 密码abc(在连接的虚拟机oracle下HR数据库中可以找到 le) create user le identified by abc; 授予用户le链接 资源使用 权限 grant connect,resource to le; 使用用户le 密码abc 通过tns服务连接mydog变量中的服务器 conn le/[email protected] ABC在线销

Oracle语法01

//建立表空间 create  tablespace t_workdatafile 'E:\20141122_work\work.dbf'size 100mautoextend on //创建用户create user lln2identified by 123default tablespace t_worktemporary tablespace temp //为用户分配权限 grant connect,resource,dba to lln2

oracle语法

数据定义DDLcreate alter drop truncate 数据操纵DMLinsert select delete update 事务控制TCLcommit savepoint rollback 数据控制DCLgrant revoke cmd连接数据库sqlplus system/[email protected]查看所在库 select name from v$database sys超级用户system管理员scott/tigrt测试用户 若scott/tigher用户被锁=====