Sql与Oracle的差异
/*整理背景201403订单中心数据库迁移(整理Oracle与SQL的差异)
整理规则第一句为SQL Server 第二句为Oracle*/
--数据类型
int integer
varchar varchar2
double number(25,10)
datetime date
/*
--临时表
ORACLE 数据库在使用临时表时,要先将临时表建到数据库中,然后才能使用临时表。
*/
/*
--多条语句同时放在一起执行时
begin
语句1;
语句2;
语句3;
。;。;。;
end;
*/
/*
非常有用的函数
floor(参数) 去除小数点后的所有小数位
coalesce(参数1,参数2,参数3,参数4) 返回第一个不为null的值,若都为null则返回null
-->ORACLE LPAD(参数,长度,填充值) 向左填充 RPAD(参数,长度,填充值) 向右填充
*/
--字符串拼接语法
select 'a'+'b';
select 'a'||'b' from dual;
--查询第一条数据
select top 1 from Table1;
select * from Table1 where rownum<2;
--查询一个字段如果是空则替换默认值
select ISNULL('字段1',0) from Table1;
select nvl('字段1',0) from Table1;
--截取字符串
select SUBSTRING('字段1','开始位置','截取长度') from Table1;
select SUBSTR('字段1','开始位置','截取长度') from Table1;
--去字段值的长度
select len('字段1') from Table1;
select length('字段1') from Table1;
--数据类型转换
select CONVERT('字段1',datatype) from Table1;select CAST('字段1' as dataType) from Table1;
select CAST('字段1' as dataTye) from Table1;
--注:在数据类型转换过程中cast语法select cast(1.2 as int) select cast(1.6 as int)这两个结果在sql server中
--为1 oracle中结果为1,2使用过程中一定要注意
--左右截取
select left('123',2)-->12
select right('123',2)-->23
--ORACLE中没有左右截取,实现同样的效果用SUBSTR。
--Update语句的区别(多表联合更新)
--注:单张表更新SQL与ORACLE一样
update Table1 set 字段1='value1',字段2='value2'
from Table2,Table1
where Table2.字段1=Table1.字段1 and Table2.字段2=Table1.字段2
MERGE INTO Table1
USING Tabel2
ON(Table2.字段1=Table1.字段1 and Table2.字段2=Table1.字段2)
WHEN MATCHED THEN UPDATE SET
字段1='value1',字段2='value2'
UPDATE Table1 set 字段1='value1' where exists
(select 1 from Table2
where Table1.字段2=Table2.字段2
and Table1.字段2='字段2')
--Delete语句
--注:单张表的删除语句SQL与ORACLE一样
Delete from Table1,Table2 where
Table2.字段1=Table1.字段1 and Table2.字段2=Table1.字段2
Delete from Table1 where exists
(select 1 from Table2
where Table2.字段1=Table1.字段1
and Table2.字段2=Table1.字段2)
转载自:https://www.cnblogs.com/cwgyn/p/3619868.html
Sql与Oracle的差异的更多相关文章
- sql server和oracle的差异
.部分SQL语句差异 (1)SQL:select top 10 * from table ORA: select * from table where rownum<11(2)SQL:S ...
- MS SQL到Oracle的数据迁移笔记
MS SQL到Oracle的数据迁移笔记 一.任务背景 旧系统使用MS SQL Server数据库,新系统使用Oracle数据库,现在需要将旧系统中的数据迁移到新系统中,旧数据按照约定的规则转换后,能 ...
- SQL优化 | Oracle 绑定变量
之前整理过一篇有关绑定变量的文章,不太详细,重新补充一下. Oracle 绑定变量 http://www.cndba.cn/Dave/article/1275 一.绑定变量 bind variable ...
- 【SQL】Oracle分页查询的三种方法
[SQL]Oracle分页查询的三种方法 采用伪列 rownum 查询前10条记录 ? 1 2 3 4 5 6 7 8 9 10 11 [sql] select * from t_user t whe ...
- 历尽磨难之PL/SQL链接Oracle数据库
说起来都是泪啊,上司布置的任务需要远程连接Oracle数据库,说实话这又是我人生中的第一次.我听到以后觉得不是什么大问题,然而我错了..错的很厉害! 我搞了一天一夜才弄好,这里面原因有很多,大体来讲还 ...
- General Ledger Useful SQL Scripts – Oracle Applications 11i
General Ledger Useful SQL Scripts – Oracle Applications 11i Contents GL Set of Books Configuration O ...
- PL/SQL在Oracle服务器上连接出错
今天在Oracle服务器上使用PL/SQL连接Oracle软件的时候出现了错误,错误如下: 具体的解决办法如下: 需要下载32位的Oracle Client,具体的步骤如下:登录Oracle官方网站 ...
- SQL优化(Oracle)
(转)SQL优化原则 一.问题的提出 在应用系统开发初期.因为开发数据库数据比較少.对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,可是假设将应用系统提交实际应用后,随着数 ...
- SQL Server,Oracle,DB2索引建立语句的对比
原文引至:http://jvortex.blog.163.com/blog/static/16961890020122141010878/ 我们知道,索引是用于加速数据库查询的数据库对象.原理就是减少 ...
随机推荐
- Docker 网络简单说明
docker0 网络模型小结 Docker Daemon 会创建出一个名为 docker0 的虚拟网桥 ,用来连接宿主机与容器,或者连接不同的容器. veth pair 是用于不同network na ...
- Django 练习班级管理系统三 -- 分页
在 user_manager 项目下创建一个 python package:utils,里面创建一个 page.py 文件 page.py 文件内容为: # 创建一个 PagerHelper 类 cl ...
- ansible服务部署
1.ansible.cfg配置文件 [defaults] #inventory= /home/op/ansible/testing #sudo_user=root remote_port=9122 r ...
- 其他综合-CentOS 7 使用yum 安装 PHP 5.6
其他综合-CentOS 7 使用yum 安装 PHP 5.6 1.删除旧php包 yum remove php.x86_64 php-cli.x86_64 php-common.x86_64 php- ...
- SQLServer常用快捷键汇总
菜单激活键盘快捷键 操作 SQL Server 2017 SQL Server 2008 R2 移到 SQL Server Management Studio 菜单栏 Alt Alt 激活工具组件的菜 ...
- day39_8_23mysql的其他内容(视图等)
一.视图 MySQL中有一种比较方便的表,就是视图(view). 什么是视图? 视图就是通过查询获得一张虚拟表,然后将其保存,下次可以直接使用这个视图. 使用视图就可以不需要重复查询/连接表,在代码层 ...
- day4_变量和作用域
全局变量与局部变量: 全局变量: 定义变量时,变量左边没有缩进,就是全局变量,可以被当前py文件的任何地方给引用 局部变量: 有缩进的变量就是局部变量 函数的作用域: def test1(): age ...
- Tableau 练习题
1.练习一 1. 提出问题:对某个学校或者一个城市的教育水平进行评估,或者多个学校的教育水平进行比较 指标:学生考试成绩 根据考试成绩高低判断教育水平:影响因素:学生餐饮,从多个维度分析,各城市在不同 ...
- Spring Boot 2.2.0,性能提升+支持Java13
随着 Spring Framework 5.2.0 成功发布之后,Spring Boot 2.2 也紧跟其后,发布了第一个版本:2.2.0.下面就来一起来看看这个版本都更新了些什么值得我们关注的内容. ...
- nowcoder907B n的约数
题意 t次询问,每次给你一个数n,求在[1,n]内约数个数最多的数的约数个数 \(t \le 500,n \le 10^{19}\) 思路 首先可以想到将n质因数分解.即\(n= \prod\limi ...