gpt4 book ai didi

sql-server - WHERE 子句运算符需要兼容的变量

转载 作者:行者123 更新时间:2023-12-02 00:53:42 25 4
gpt4 key购买 nike

下面的脚本(fx 是 SQL Server 的表):

LIBNAME SQL ODBC DSN='sql server' ;

DATA new;
SET SQL.fx;
WHERE repo_date = '2016-04-29 00:00:00.000';
RUN;


PROC PRINT DATA=new;
RUN;

返回一个错误(在 SAS 日志中):

191      WHERE repo_date = '2016-04-29 00:00:00.000';
ERROR: WHERE clause operator requires compatible variables.
192 RUN;

我在哪里可以检查我需要哪种数据转换(在这种情况下和其他情况下)?

在 SQL Server 2008R2 中,repo_date 是一个datetime列。

最佳答案

您正在将字符串与数值进行比较。所以你的 datetime-format 是错误的(就像 Heinzi 提到的那样),你还必须将它转换为 datetime 值(通过在末尾添加一个 dt)

工作应该是这样的:

WHERE repo_date ='29APR2016 00:00:00.000'dt;

如果repo_time是datetime,时间不相关,可以直接比较日期:

WHERE datepart(repo_date) = '29APR2016'd;

关于sql-server - WHERE 子句运算符需要兼容的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37547500/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com