【问题标题】:Converting Sybase ASE-specific *= and =* into LEFT/RIGHT OUTER JOIN将 Sybase ASE 特定的 *= 和 =* 转换为 LEFT/RIGHT OUTER JOIN
【发布时间】:2012-10-08 16:28:32
【问题描述】:

我有一些在 Sybase ASE 15.0.2 上运行的 PHP 应用程序,我需要将它们移植到 MicroSoft SQL Server 2008 R2。 许多查询使用带有 *= and =* 的纯 Sybase 语法 是否有一种使用 LEFT/RIGHT OUTER JOIN 将查询从 Sybase 语法转换为标准语法的自动方法?

【问题讨论】:

  • 请参考this链接帮助你:
  • 我的意思是自动的。我知道如何手动完成,但查询很多且复杂。

标签: sql sql-server sql-server-2008 sap-ase


【解决方案1】:

*= 表示左外连接

=* 表示右外连接

所以

select * 
from tableA, titleauthor
where tableA.ID *= titleauthor.ID 

意思

select * 
from tableA left join titleauthor
on tableA.ID = titleauthor.ID 

我认为您不会找到自动为您执行此操作的工具。尽管很简单,但它可能会变得很棘手,并且自动化过程不会 100% 可靠(我认为)

【讨论】:

    【解决方案2】:

    对于其他人将来遇到的转换问题(我们将从 SAP ASE 16.0 升级到 SQL Server 2016),只需在 SSMS 中选择查询,执行 CTRL+SHIFT+Q 即可打开查询设计器。这将尽可能转换为 SQL Server ANSI 标准。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-10
      • 2013-05-02
      • 2014-01-07
      • 2011-03-12
      • 2012-02-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多