YEARFRAC function on SQL Server not working

故事扮演 提交于 2019-12-24 03:07:20

问题


I was happy to find you can use an Excel-like YEARFRAC function in MS SQL server (http://technet.microsoft.com/en-us/library/ee634405.aspx), but for some reason I get an error that states:

'yearfrac' is not a recognized built-in function name

when I try to run my query. Here is my code:

SELECT CUSTOMER_ID, PRODUCT_SKU, SUB_START_DATE, SUB_EXP_DATE,
  YEARFRAC(sub_start_date, sub_exp_date) AS START_TO_END FROM ...

For the record, I have double-checked the dates are in proper datetime format, and I tried both using no basis (as shown above), and using the available 1-4 bases. I also tried removing the column alias (START_TO_END). None of these worked. Any ideas?


回答1:


No, that is in Analysis Services (DAX specifically), not in T-SQL. The header on the page does not make it clear which section of the documentation you're in, but look at the table of contents on the left...

Sorry the screen shot is double size, it's because of my Retina screen giving 144dpi instead of 72dpi.

Anyway, you should be able to replicate this functionality with your own UDF or, if you always calculate a specific way, it might even be simple enough to do inline. A calendar table may help.



来源:https://stackoverflow.com/questions/20034135/yearfrac-function-on-sql-server-not-working

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!