MSSQL转Mysql常用

一、字段类型
MSSQL Mysql 备注
"nchar" "char()" 最大长度为255
"nvarchar" "varchar":
"uniqueidentifier" "varchar(36)" 默认值:uuid() 代表唯一值GUID
"image" "mediumblob"
"money","smallmoney" "decimal(11,2)" 二、函数
MSSQL Mysql 备注
getdate() NOW() 当前时间
@@ROWCOUNT ROW_COUNT() 影响行数
len() CHAR_LENGTH() 字符长度
DATALENGTH() LENGTH() 字节长度,mssql一个汉字2个字节,mysql一个汉字3个字节
'Li'+'Di' CONCAT('Li','Di') 字符串拼接
CHARINDEX('zh', 'De_Zha') INSTR('De_Zha','zh') 查找索引,mssql和mysql参数位置调换
CONVERT(varchar(), '5.00') CONVERT('5.00',CHAR) 类型转换,mssql和mysql参数位置调换,且mysql不支持varchar
ISNULL IFNULL 判断字符串是否为空,参数一样
DATEPART(DAY,getdate()) DAY(NOW()) 取日期的单体数据,同理有YEAR,MONTH,HOUR,WEEKDAY等等
DATEDIFF(DAY,date1,date2) TIMESTAMPDIFF(DAY,date1,date2) 取两个日期时间差,同理有YEAR,MONTH,HOUR,WEEK等等
dateadd(MONTH,,getdate()) DATE_ADD(NOW(),INTERVAL MONTH) 日期增加,同理Year,DAY,Hour等,mysql日期相减函数DATE_SUB()
identity(,) AUTO_INCREMENT 自动增长列
bit类型字段col            convert(col,signed)            bit类型字段mysql直接查出来会有乱码,先要转换成数字型 三、其他(mysql语句必须以;结束)
MSSQL Mysql 备注
DECLARE @a VARCHAR() DECLARE a VARCHAR() 声明变量时,mysql不能带@符号,但是mysql可以不用declare声明变量,可以直接set @a='',默认全局变量
SELECT top * FROM A SELECT * FROM A LIMIT , 取前10行数据
CREATE TABLE #G1DaySum CREATE TEMPORARY TABLE `G1DaySum` 创建临时表
CREATE PROCEDURE AA(a INT, b INT output) CREATE PROCEDURE AA(IN a INT, OUT b INT) 存储过程参数格式
IF() BEGIN END IF() THEN END IF if用法
WHILE() BEGIN END WHILE() DO END WHILE while用法

日期处理

【SQL SERVER】日期格式化
【MYSQL】Date和String的互相转换(DATE_FORMAT & STR_TO_DATE)


CONVERT(varchar(21) , GETDATE(), 120 )
to
DATE_FORMAT(NOW(),'%Y-%m-%d %T') -- 20 '%Y-%m-%d %T'
-- 120 '%Y-%m-%d %T'
-- 102 '%Y-%m-%d'
-- 111 '%Y/%m/%d'
-- 112 '%Y%m%d'
-- 8 '%T'
-- 24 '%T' -- vs中正则替换 convert(VarChar(20), max(BudgetDate),120)
转换
DATE_FORMAT(max(BudgetDate),'%Y/%m/%d')
查找内容
CONVERT\(varchar(.*), (.*),120\)
替换为
DATE_FORMAT($2,'%Y/%m/%d') convert\(varchar\((\d*)\),(.*),121\)
DATE_FORMAT($2,'%Y-%m-%d %T')
------------------------------------------
MSSQL
Convert(int,'03')
MySQL
Convert('03',SIGNED)
------------------------------------------
dateadd(day, -1, getdate())
转换
DATE_ADD(NOW(),INTERVAL -1 DAY)
正则
dateadd\(day,(.*),(.*)\)
替换为
date_add($2,interval $1 day)
------------------------------------------
CAST(200.126 AS money)
CAST(200.126 AS DECIMAL(10,2))

常用语句


-- 分页
-- sqlserver
select row_number() over(order by date) rnumber from ttable;
-- mysql
select (@rownum := @rownum + 1) rnumber from ttable,(select @rownum := 0) b order by date; -- 统计
select sum(amt) over() as amt from ttable;
select (@amt := @amt + amt) as amt from ttable,(@amt := 0) b
 

MSSQL转Mysql常用函数,语法等的更多相关文章

  1. mysql常用函数参考

    mysql常用函数参考   对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL, ...

  2. Mysql 常用函数(4)- case 函数

    Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html case 的作用 if 的高级版,类似Java 里 ...

  3. Mysql 常用函数(15)- upper 函数

    Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html upper 的作用 将所有字符串更改为大写,然后返 ...

  4. Mysql 常用函数(14)- lower 函数

    Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html lower 的作用 将所有字符串更改为小写,然后返 ...

  5. Mysql 常用函数(13)- right 函数

    Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html right 的作用 返回字符串 str 中最右边的 ...

  6. Mysql 常用函数(12)- left 函数

    Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html left 的作用 返回字符串 str 中最左边的 ...

  7. Mysql 常用函数(11)- trim 函数

    Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html trim 的作用 删除字符串左右两侧的空格 tri ...

  8. Mysql 常用函数(10)- strcmp 函数

    Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html strcmp 的作用 比较两个字符串的顺序是否完全 ...

  9. Mysql 常用函数(9)- reverse 函数

    Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html reverse 的作用 将字符串反转,即顺序取反 ...

随机推荐

  1. topcoder srm 615 div1

    problem1 link 对于数字$x$,检验每个满足$x=y*2^{t}$的$y$能否变成$x$即可. problem2 link 如果起点到终点有一条长度为$L$的路径,那么就存在长度为$L+k ...

  2. Spring HATEOAS的简单认识

    HATEOAS: 超媒体作为应用程序状态引擎(HATEOAS)是REST应用程序体系结构的一个组件,它将其与其他网络应用程序体系结构区分开来. 使用HATEOAS,客户端与网络应用程序交互,其应用程序 ...

  3. Python中不尽如人意的断言Assertion

    Python Assert 为何不尽如人意 Python中的断言用起来非常简单,你可以在assert后面跟上任意判断条件,如果断言失败则会抛出异常. >>> assert 1 + 1 ...

  4. Kindeditor富文本实现textarea文本域的上传及单独button 按钮绑定(用来实现单文件上传)

    在最近项目要新增一个内容文章,文章包含一般的正文内容,其中正文中可以包含多张图片.文章最多包含一个音频文件.文章正文的上传功能我是通过textarea文本域绑定kindeditor编辑器实现的,而单独 ...

  5. iOS has conflicting provisioning settings 解法

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  6. 使用VSCode调试Jest

    0. 环境 Node版本:8.12.0 操作系统:windows10 1. 配置launch.json { "version": "0.2.0", " ...

  7. js form表单的校验

    if(!$("#form").validate().form()){ return false;} <元素 class="required">< ...

  8. MVVM以及vue的双向绑定

    原文:https://www.cnblogs.com/onepixel/p/6034307.html MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式,其核 ...

  9. 谈谈传统BIO网络编程模型的局限性与NIO

    先来看看我们的server端: 创建一个serversocket,进行监听,每来一个客户端,就启动一个新启动为其服务: private void createListenSocket() { //如果 ...

  10. 删除链表的倒数第N个节点(java实现)

    题目: 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链 ...