如何将SQL Server中的交叉应用程序转换为Teradata

如何将SQL Server中的交叉应用程序转换为Teradata,sql,teradata,Sql,Teradata,我正在尝试将以下update语句从SQL Server迁移到Teradata: 下面是我要迁移的MS SQL SERVER中的代码: Update x set x.a = isnull(cast(x.b as date),Date) from table x cross apply schema.middateperd(period) middateperd是一个表值函数,下面是函数定义: 返回 {选择转换(日期,句点,110)为日期} 我希望在不使用任何函数的情况下将其迁移到Teradata

我正在尝试将以下update语句从SQL Server迁移到Teradata:

下面是我要迁移的MS SQL SERVER中的代码:

Update x
set x.a = isnull(cast(x.b as date),Date)
from table x
cross apply schema.middateperd(period)
middateperd
是一个表值函数,下面是函数定义:

返回 {选择转换(日期,句点,110)为日期}


我希望在不使用任何函数的情况下将其迁移到Teradata上

这个问题没有意义。(1) 您是否在Teradata中定义了该函数?(2) 如果函数只返回一行,为什么要使用表值函数。(3) 如果函数返回多行,为什么要在
更新中使用它?middateperd()
返回什么?
选择convert(date,period,110)
是无效的T-SQL,什么是
period
?顺便说一句,您没有在集合或位置中使用
middateperd
。更新我的问题middateperiod用于更新。它是交叉应用的