SQLServer Oracle MySQL的区别

SQLServer Oracle MySQL的区别

简介
SqlServser:Microsoft产品,通过良好的ODBC接口可以将Access、FoxPro、Excel转换为SQLServer数据库。
Oracle:运行于所有主流平台,完全支持所有的工业标准(ODBC、JDBC、OCI),采用完全开放策略。Oracle并行服务器通过使一组结点共享同一簇中的工作扩展Windows NT的能力,提高可利用性和高伸缩性的簇的解决方案。支持大并发,大访问量。价格昂贵。
MySql:不支持事务处理,没有视图,没有存储过程和触发器,没有数据库端的用户自定义的函数,不能完全适用标准的SQL语法。目前可能已经支持。
语法区别
区别类型 SQLServer Oracle MySQL
[字符串拼接] + || concat()
[控制处理数] isnull()

|-NVL NVL(expr1,expr2) 如果第一个参数为空,那么先显示第二个参数,如果第一个参数不为空,则显示第一个参数

|-NVL2 NVL2(expr1,expr2,expr3)如果第一个参数为空则显示第二个参数,不为空则显示是第三个参数

|-NULLIF(expr1,expr2)expr1和expr2相等则返回NULL,否则返回第一个值

|-ifnull(expr1,expr2) 如果第一个参数为空,那么先显示第二个参数,如果第一个参数不为空,则显示第一个参数

|-isnull(expr) 表示判断参数是否为null,为null则1,否则为0

|-NULLIF(expr1,expr2)expr1和expr2相等则返回NULL,否则返回第一个值

[获取系统时间]  getdate()  sysdate  now()
[日期格式化]  convert(varchar(8),getdate(),112)  to_char(sysdate,'yyyyMMdd')  data_format(xcs_received_date,'%Ym%d')
[检查是否有表再删除]  IF OBJECT_ID('xxx') IS NOT NULL  需要用到系统表(dbo.sysobjects)  select count(1) from user_tables where tablename ='xxx'  drop table if exists tablename

猜你喜欢

转载自www.cnblogs.com/Joyce-Record/p/11085389.html