欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle和SQL语法区别整理

程序员文章站 2022-05-21 20:16:56
...

字符数据类型 CHAR CHAR 都是固定长度字符资料但oracle 里面最大度为2kb,SQLServer里面最大长度为8kb 变长字符数据类型

  字符数据类型 CHAR CHAR 都是固定长度字符资料但Oracle 里面最大度为2kb,SQLServer里面最大长度为8kb

  变长字符数据类型 VARCHAR2 VARCHAR Oracle 里面最大长度为 4kb,,SQLServer里面最大长度为8kb

  根据字符集而定的固定长度字符串 NCHAR NCHAR 前者最大长度2kb后者最大长度4kb

  根据字符集而定的可变长度字符串 NVARCHAR2 NVARCHAR 二者最大长度都为4kb

  日期和时间数据类型 DATE 有Datetime和Smalldatetime两种 在oracle 里面格式为DMY在SQLSerser里面可以调节,默认的为MDY

  数字类型 NUMBER(P,S) NUMERIC[P(,S)] Oracle 里面p代表小数点左面的位数,s代表小数点右面的位数。而SQLServer里面p代表小数点左右两面的位数之和,s代表小数点右面的位数。

  数字类型 DECIMAL(P,S) DECIMAL[P(,S)] Oracle 里面p代表小数点左面的位数,s代表小数点右面的位数。而SQLServer里面p代表小数点左右两面的位数之和,s代表小数点右面的位数。

  整数类型 INTEGER INT 同为整数类型,存储大小都为4个字节

  浮点数类型 FLOAT FLOAT

  实数类型 REAL REAL

  ORACLE 内部函数大全以及与SQLSERVER的区别:

  下面是Oracle 支持的字符函数和它们的Microsoft SQL Server等价函数。

  函数 Oracle Microsoft SQL  Server

  把字符转换为ASCII :ASCII ASCII

  字串连接: CONCAT --------------(expression + expression)

  把ASCII转换为字符 CHR, CHAR

  返回字符串中的开始字符(左起) INSTR ,---------------CHARINDEX

  把字符转换为小写 LOWER ---------------------LOWER

  把字符转换为大写 UPPER-------------------- UPPER

  填充字符串的左边 LPAD --------------------N/A

  清除开始的空白 LTRIM--------------------LTRIM

  清除尾部的空白 RTRIM --------------------RTRIM

  字符串中的起始模式(pattern) INSTR --------------------PATINDEX

  多次重复字符串 RPAD --------------------REPLICATE

  字符串的语音表示 SOUNDEX --------------------SOUNDEX

  重复空格的字串 RPAD --------------------SPACE

  从数字数据转换为字符数据 TO_CHAR --------------------STR

  子串 SUBSTR --------------------SUBSTRING

  替换字符 REPLACE --------------------STUFF

  将字串中的每个词首字母大写 INITCAP --------------------N/A

  翻译字符串 TRANSLATE --------------------N/A

  字符串长度 LENGTH-------------------- DATELENGTH or LEN

  列表中最大的字符串 GREATEST-------------------- N/A

  列表中最小的字符串 LEAST --------------------N/A

  如果为NULL则转换字串 NVL-------------------- ISNULL

  日期函数

  下面是Oracle 支持的日期函数和它们的Microsoft SQL Server等价函数。

  函数 Oracle --------------------Microsoft SQL  Server

  日期相加 (date column +/- value) or ADD_MONTHS --------------------DATEADD

  两个日期的差 (date column +/- value) or MONTHS_BETWEEN --------------------DATEDIFF

  当前日期和时间 SYSDATE --------------------GETDATE()

  一个月的最后一天 LAST_DAY --------------------N/A

  时区转换 NEW_TIME --------------------N/A

  日期后的第一个周日 NEXT_DAY --------------------N/A

  代表日期的字符串 TO_CHAR --------------------DATENAME

  代表日期的整数 TO_NUMBER (TO_CHAR)) --------------------DATEPART

  日期舍入 ROUND --------------------CONVERT

  日期截断 TRUNC --------------------CONVERT

  字符串转换为日期 TO_DATE --------------------CONVERT

  如果为NULL则转换日期 NVL -------------------- ISNULL

  转换函数

  下面是Oracle 支持的转换函数和它们的Microsoft SQL Server等价函数。

  函数 Oracle --------------------Microsoft SQL  Server

  数字转换为字符 TO_CHAR --------------------CONVERT

  字符转换为数字 TO_NUMBER --------------------CONVERT

  日期转换为字符 TO_CHAR --------------------CONVERT

  字符转换为日期 TO_DATE CONVERT

  16进制转换为2进制 HEX_TO_RAW --------------------CONVERT

  2进制转换为16进制 RAW_TO_HEX --------------------CONVERT

Oracle和SQL语法区别整理