在 Azure CosmosDB SQL 查询中将 TimeScript 转换为日期

das*_*das 8 sql azure azure-cosmosdb

如何选择日期可读格式的文档时间脚本?我想做这样的事情:

SELECT CAST(C._ts AS DATE) FROM C
Run Code Online (Sandbox Code Playgroud)

请仅针对 Cosmos DB SQL 查询。

小智 12

2020 年 10 月宣布的函数https://devblogs.microsoft.com/cosmosdb/new-date-and-time-system-functions/可以帮助实现这一点(注意将秒转换为毫秒)

SELECT TimestampToDateTime(C._ts*1000) as DateTime FROM C
Run Code Online (Sandbox Code Playgroud)


Jay*_*ong 6

请在 Cosmos DB 中使用UDF 。

样本文件:

在此输入图像描述

乌德夫:

function convertTime(unix_timestamp){

      var date = new Date(unix_timestamp*1000);
      var year = date.getFullYear();
      var month = ("0"+(date.getMonth()+1)).substr(-2);
      var day = ("0"+date.getDate()).substr(-2);
      var hour = ("0"+date.getHours()).substr(-2);
      var minutes = ("0"+date.getMinutes()).substr(-2);
      var seconds = ("0"+date.getSeconds()).substr(-2);

      return year+"-"+month+"-"+day+" "+hour+":"+minutes+":"+seconds;
}
Run Code Online (Sandbox Code Playgroud)

SQL:SELECT udf.convertTime(c._ts) FROM c

在此输入图像描述

当然,在这种情况下你可以参考不同的格式:Convert a Unix timestamp to time in JavaScript

希望对您有帮助。