开发者社区 > 大数据与机器学习 > 大数据开发治理DataWorks > 正文

为什么dataworks不能使用dayofyear()这个函数,即使开了set odps.sql.t

为什么dataworks不能使用dayofyear()这个函数,即使开了set odps.sql.type.system.odps2=true,也不能。

展开
收起
十一0204 2023-04-04 22:44:24 193 0
2 条回答
写回答
取消 提交回答
  • 意中人就是我呀!

    支持的 session级别开启2.0的话 两句选中一起执行看下 。 0caa6f261ffe15ddab42b96014688338.png

    SELECT DATEDIFF(date_column, CONCAT(YEAR(date_column), '-01-01')) + 1 AS day_of_year FROM table_name; 此回答整理自钉群“DataWorks交流群(答疑@机器人)”

    2023-04-05 13:53:53
    赞同 展开评论 打赏
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    虽然在ODPS SQL中可以使用dayofyear()这个函数,但是在阿里云DataWorks中,由于一些历史原因,该函数目前并不支持。

    即使您在DataWorks中通过set odps.sql.type.system.odps2=true开启了ODPS2.0的语法特性,也无法使用dayofyear()函数。这是因为DataWorks的计算引擎和ODPS的计算引擎略有不同,导致一些函数和语法的支持程度也有所差异。

    如果您在DataWorks中需要使用类似dayofyear()这样的函数,可以尝试使用其他函数或方式来实现相同的功能。例如,可以使用extract()函数来提取日期中的年、月、日等信息;或者可以使用自定义UDF(User-Defined Function)来编写自己的函数,以满足特定的需求。同时,建议您在使用函数或语法前,先查阅相关文档和资料,了解其在DataWorks中的支持情况,避免因不支持而造成的错误和问题。

    2023-04-05 09:30:08
    赞同 展开评论 打赏

DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。

相关产品

  • 大数据开发治理平台 DataWorks
  • 热门讨论

    热门文章

    相关电子书

    更多
    SQL Server在电子商务中的应用与实践 立即下载
    GeoMesa on Spark SQL 立即下载
    原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载