1. 程式人生 > 資料庫 >SQL server遷移儲存過程到MySQL部分語法差異

SQL server遷移儲存過程到MySQL部分語法差異

SQL server遷移儲存過程到MySQL部分語法差異

1、DATEADD() 函式在日期中新增或減去指定的時間間隔。
如:要在end_date欄位加一天
SQL server語法:DATEADD(dd, 1,end_date)
MySQL語法:DATE_ADD(end_date,INTERVAL 1 DAY)

2、 返回當前的時間和日期
如:獲取當前時間和日期
SQL server語法:GETDATE()
MySQL語法:SYSDATE()

3、建立臨時表
SQL server語法: CREATE TEMPORARY TABLE tb2
MySQL語法:CREATE TABLE #tb2

4、 使用指定的替換值替換NULL
如:檢查密碼欄位是否為空,為空則用"123456"替換
SQL server語法: ISNULL(password, ‘123456’)
MySQL語法: IFNULL(password, ‘123456’)

5、 查詢一個字元或字串在另一個字元或字串中的位置
如:要查詢"zhang"在字串"my name is zhang kai"
SQL server語法: CHARINDEX(‘zhang’, ‘my name is zhang kai’) 返回12
MySQL語法: INSTR(‘my name is zhang kai’,‘zhang’) 返回12

6、關鍵字作表字段問題
SQL server可以用status 作為表的屬性,MySQL中status是關鍵字,要查詢該屬性 使用表名.status—反引號

7、if elseif語法
SQL server 是else if(中間有空格)
MySQL是elseif (中間沒有空格)
另外:MySQL if 語塊完了之後需要加上END IF
MySQL if 條件語句之後加THEN關鍵字