暂无图片
暂无图片
7
暂无图片
暂无图片
暂无图片

MySQL转向PG的一些兼容性

原创 飞鸟-柯 2023-02-02
1178

整理的不全,请大家指正:

差异父类 差异子类 内容 MySQL PostgreSQL 备注
字符集和排序规则 字符集   utf8mb4 UTF8  
数据类型 数字类型 短整类型 SMALLINT SMALLINT  
整形类型 INT INTEGER  
长整类型 BIGINT BIGINT  
定点型数据类型 DECIMAL NUMERIC  
定点型数据类型 NUMERIC NUMERIC  
浮点型数据类型 FLOAT REAL  
自增 auto_increment SERIAL  
日期和时间类型 日期类型 DATE DATE  
时间类型 DATETIME TIMESTAMP  
时时间戳类型 timestamp TIMESTAMP  
字符串类型 字符串类型定长 CHAR CHAR  
字符串类型变长 VARCHAR VARCHAR  
文本类型 LONGTEXT TEXT  
转换整形 SELECT CAST('100' AS  unsigned int); CAST ('100' AS INTEGER)  
整形转换为字符型 CAST(12345 AS CHAR) trim(to_char(12345, '999999999') )  
字符串转为date类型 str_to_date('2022-01-05','%Y-%m-%d') CAST ('2015-01-01' AS DATE)  
date类型转换为字符串类型 date_format(now(),'%Y-%m-%d %H:%i:%s') to_charR(now(),'yyyy-mm-dd hh24:mi:ss')  
函数类型 时间函数 返回当前日期时间(戳) NOW() LOCALTIMESTAMP(0);  
返回当前日期 CURDATE() CURRENT_DATE  
返回当前时间 CURTIME() LOCALTIME  
字符串转为date类型 str_to_date('2022-01-05','%Y-%m-%d') CAST ('2015-01-01' AS DATE)  
日期增加时间函数 DATE_ADD(now(),INTERVAL 2 MONTH) now() + ' 2 MONTH' 1 year 1 month 1 day 1 hour 1 min 1 sec
日期相减函数 DATEDIFF    
字符串函数 拼接函数 CONCAT,CONCAT_WS CONCAT,CONCAT_WS  
定位指定子串 INSTR POSITION
提取子串 SUBSTRING SUBSTRING  
移除函数 TRIM TRIM  
补齐函数 LPAD,RPAD LPAD,RPAD  
字符串替换 REPLACE REPLACE  
字符串长度 CHAR_LENGTH CHAR_LENGTH  
大小写转换 LOWER,UPPER LOWER,UPPER  
字符串检索 FIND_IN_SET ANY(STRING_TO_ARRAY())  
  group_concat函数 GROUP_CONCAT STRING_AGG  
NULL值处理函数 空值判断 IFNULL(EXPR1,EXPR2)  coalesce(EXPR1,EXPR2)   
窗口函数 窗口函数 RANK(),DENSE_RANK(),ROW_NUMBER(),percent_rank(),lag(),lead(),first_value(),last_value(),cume_dist(),ntile() RANK(),DENSE_RANK(),ROW_NUMBER(),percent_rank(),lag(),lead(),first_value(),last_value(),cume_dist(),ntile()  
其他 分页查询   LIMIT 10,5 ;limit 10 offset 5 limit 10 offset 5 使用通用的写法limit 10 offset 5
  注释 注释 #或者'--空格'  /**/ '--' 使用通用的注释方式: /**/
  封闭字符串 封闭字符串 ' 或者“”  '' 使用通用的写法:''
  空值 ''和null 不等价 等价 null判断使用is null 和is not  null 判断
  物化视图 物化视图 不支持 支持 mysql使用中间件表
SQL写法 关联 表关联多字段更新 不支持 UPDATE table SET (COLUMN_name1,COLUMN_name2) = (SELECT
COLUMN_name1,COLUMN_name2 FROM table WHERE COLUMN_name = COLUMN_name);
禁止使用该写法
  limit DELETE、UPDATE支持ORDER BY和LIMIT 支持 不支持 禁止使用该写法
  多表扇窗户 DELETE支持从多个表中删除数据 支持 不支持 禁止使用该写法
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论