Skip to content

MySQL兼容性

MatrixOne的SQL语法兼容了MySQL 8.0.23版本。

语句类型 语法 兼容性
DDL CREATE DATABASE 不支持中文命名的表名
支持部分拉丁语
CHARSETCOLLATEENCRYPTION 目前可以使用但无法生效
CREATE TABLE 不支持临时表
不支持表的分区
不支持 Create table .. as 语句
不支持列级约束
暂不支持复合主键
暂不支持 KEY(column) 语法
暂不支持 AUTO_INCREMENT
CREATE other projects 不支持 CREATE/DROP INDEX
ALTER 暂不支持
DROP DATABASE 同 MySQL.
DROP TABLE 同 MySQL.
DML INSERT 暂不支持 LOW_PRIORITYDELAYEDHIGH_PRIORITY
暂不支持使用 INSERT INTO VALUES 函数或表达式
支持批量插入,最多支持160,000行
暂不支持 ON DUPLICATE KEY UPDATE
暂不支持 DELAYED
不分支持拉丁文命名
当前的 SQL 模式同 MySQL 中的 only_full_group_by模式
SELECT GROUP BY 中不支持表别名
部分支持 Distinct
暂不支持 SELECT...FOR UPDATE 从句
部分支持 INTO OUTFILE
LOAD DATA 只能导入 csv 文件
包括符 enclosed 应该为""
字段分隔符 FILEDS TERMINATED BY 应该为 "," 或 "
行分隔符 LINES TERMINATED BY 应该为 "\n"
暂不支持 SET
不支持本地关键词
只有mo-server上的文件才支持相对路径
JOIN 同 MySQL
SUBQUERY 暂不支持 Non-scalar 子查询
数据库管理语句 SHOW 仅支持 show tablesshow databases
支持 CREATE TABLECREATE DATABASE
Other statements 暂不支持
工具类语句 USE Use database 同 MySQL
Explain 分析的结果与 MySQL 有所不同
暂不支持 Explain Analyze
Other statements 暂不支持
数据类型 Boolean 与 MySQL 的布尔值类型 int 不同,MatrixOne 的布尔值是一个新的类型,它的值只能是 true 或 false。
Int/Bigint/Smallint/Tinyint 同 MySQL
char/varchar 同 MySQL
Float/double T与MySQL的精度有所不同
DECIMAL 最大精度为38位.
Date 只支持 YYYY-MM-DDYYYYMMDD 形式
Datetime 只支持 YYYY-MM-DD hh:mi:ssssssYYYYMMDD hh:mi:ssssss 形式
Timestamp 同 MySQL,MatrixOne 暂还不支持 timezone,Timestamp 的值不会随着时区的变化而变化。
Other types 暂不支持
运算符 "+","-","*","/" 同 MySQL
DIV, %, MOD 同 MySQL
LIKE 同 MySQL
IN 只支持常数列表
NOT, AND, &&,OR, "||" 同 MySQL
XOR 暂不支持
CAST 支持不同转换规则。
Functions MAX, MIN, COUNT, AVG, SUM 同 MySQL. 暂不支持 Distinct
any_value Any_value 是 MatrixOne 中的一个聚合函数。不能在 GROUP 或过滤条件中使用。