如何在openquery中获取列的前9位?

时间:2019-04-25 21:01:43

标签: sql ssms openquery

我正在使用SSMS通过openquery从oracle中提取一些数据,并且只需要从列中取出数字的前9位。

我尝试使用“ left(column1,9)”,它返回“ LEFT:无效标识符”

SELECT *
FROM OPENQUERY(servername,'
    SELECT left(sv.column2, 9) AS new_number
    FROM server.servername sv
')

column2 = 0987654321 new_number = 098765432

2 个答案:

答案 0 :(得分:1)

您错过了“选择” 选择 * FROM OPENQUERY([SERVER \ INSTANCE]',选择为左(sv.column,9)AS new_number FROM BD.dbo.Table sv')

好的代码。

答案 1 :(得分:0)

在Oracle中,您将使用substring(),所以类似这样:

SELECT SUBSTR(sv.column2, 1, 9) AS new_number
FROM server.servername sv