如何查询在线SQL编辑器使用的SQL版本及对应方言?
常见SQL方言汇总
- MySQL:开源生态使用最广的方言,语法灵活,支持
CREATE TABLE new_table SELECT * FROM old_table这类非标准的简化写法,对标准SQL做了大量易用性扩展。 - PostgreSQL:对ANSI SQL标准兼容性最高的开源方言,支持CTE(
WITH ... AS语法)、窗口函数等绝大多数高级SQL特性,语法严谨。 - SQLite:轻量级嵌入式数据库方言,高版本支持大部分标准SQL语法,低版本对高级特性支持度有限,资源占用极低,常被嵌入在线编辑器、客户端工具中。
- SQL Server:微软推出的商业数据库方言,基于T-SQL扩展,有大量独有的语法规则。
- Oracle:商用市场占比最高的数据库方言,基于PL/SQL扩展,和开源方言语法差异较大。
三款在线编辑器对应方言说明
结合你观察到的语法特性差异,三款工具的默认运行方言如下:
- W3Schools在线SQL编辑器:默认使用高版本SQLite,支持CTE(
WITH ... AS)标准语法,不支持MySQL特有的建表复制写法。 - MyCompiler在线SQL编辑器:默认使用低版本SQLite,对高级SQL特性支持度有限,既不支持CTE语法,也不支持MySQL特有的建表复制写法。
- SQL Fiddle:默认使用MySQL方言,所以支持
CREATE TABLE new_table SELECT * FROM old_table这类MySQL专属的简化语法,也可手动切换为其他方言测试不同语法规则。
内容的提问来源于stack exchange,提问作者Alan
相关产品推荐
相关产品推荐

