将SQL Server查询转换为MySQL查询

3
我正在将查询从SQL Server转换为MySQL。那么,有人能建议一个网站,提供在SQL Server和MySQL中执行相同操作的不同关键字吗?
例如,要获取当前时间,我们将使用以下关键字。
 MSSQL   getdate()
 MYSQL   now()

对于我需要的所有操作,都需要关键词来进行。

3个回答

2

2

0

由于MS SQLMySQL中的SQL查询语法相似但不完全相同,因此以下是将MS SQL查询转换为MySQL查询的几个提示:

  1. MySQL 不支持在表或列名周围使用方括号,必须全部用反引号`符号替换或删除。例如:[object] 应该替换为 `object`

  2. 关于 JOIN 结构,在 MS SQL 中的关键字 WHERE 被替换成 MySQL 中的关键字 ON。例如:... table1 CROSS JOIN table2 WHERE condition 必须转换为 ... table1 CROSS JOIN table2 ON condition

  3. 在 PHP 中,MS SQL 的大部分 SQL 函数都带有前缀 SQLSRV,而 MySQL 中的函数则带有前缀 MYSQL。例如:sqlsrv_fetch_arraysqlsrv_num_rowssqlsrv_query 将会被转换为 mysql_fetch_arraymysql_num_rowsmysql_query

  4. 在 MS SQL 中,LEN() 函数用于返回字符串表达式的长度。在 MySQL 中,其等价函数是 LENGTH()

  5. CONVERT() 函数用于在 MS SQL 中将一个数据类型的表达式转换为另一个数据类型。在 MySQL 中,CONVERT() 函数用于在不同字符集之间转换文本数据。然而,等价函数 CAST() 在 MySQL 中也存在,因此 MS SQL 查询中每次出现的 convert(type, expression) 必须在 MySQL 查询中替换为 cast(expression AS type)。

仅列举一些提示。请参考this页面获取更多信息。 干杯!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接