首页 > 解决方案 > 在 MicroStrategy 中滚动 12 个月的 Salesforce

问题描述

我在连接到我的 SalesForce 数据库的 MSTR WEB 中制作了多维数据集,我有一个格式为“YYYY-MM-DD HH:MM:SS”的日期字段,如何将其保持为滚动 12 个月?我尝试了不起作用的 add_month(current_date, -12)。

SELECT
  P.ID PROBLEM_ID,
  CAST(P.BMCSERVICEDESK__OPEN_DATE_TIME__C AS DATE) OPENED_DATE, 
  parent_account__C

FROM BMCSERVICEDESK__PROBLEM__C P 

WHERE P.COUNTRY__C  != ''  
AND BMCSERVICEDESK__OPEN_DATE_TIME__C >= add_months(current_date, -12) 

错误:

从外部数据源访问信息时出错(数据库实例:(DataImport)[0],错误:执行查询失败。错误类型:Odbc 错误。尝试的 Odbc 操作:SQLExecDirect。[42000:-11: on SQLHANDLE] [MicroStrategy] [ODBC Salesforce 驱动程序][Salesforce] 意外标记:语句 [select P.ID PROBLEM_ID, CAST(P.BMCSERVICEDESK__OPEN_DATE_TIME__C AS DATE) OPENED_DATE, parent_account__CFROM BMCSERVICEDESK__PROBLEM__C P WHERE P.COUNTRY__C != '' AND BMCSERVICEDESK__OPEN_DATE_TIME__C >= add_months (current_date, -12)])

谢谢!

标签: sqloraclesalesforcemicrostrategy

解决方案


你的问题/错误是什么?P.BMCSERVICEDESK__OPEN_DATE_TIME__C 的类型是什么?

编辑:

首先使用这个:

SELECT data_type, data_length FROM all_tab_columns where table_name = 'YOUR_TABLE' AND COLUMN_NAME = 'YOUR_COLUMN'

SELECT 
P.ID PROBLEM_ID, CAST(P.BMCSERVICEDESK__OPEN_DATE_TIME__C AS DATE) OPENED_DATE, parent_account__C

FROM BMCSERVICEDESK__PROBLEM__C P 

WHERE P.COUNTRY__C  is not null
AND trunc(BMCSERVICEDESK__OPEN_DATE_TIME__C) >= add_months(sysdate, -12)

你也可以截断sysdate...


推荐阅读