N1QL 将时区转换为日期,Couchbase
N1QL convert timezone into date,Couchbase
我想在 N1QL 查询中将 2015-10-29T16:15:11.000Z
转换为 2015-10-29
日期。
我该怎么做?
这里有几个选项。如果您可以容忍 ISO 8601 格式的时间并使用 DATE_TRUNC_STR(expression, part)
日期函数,最简单的方法是可行的:
SELECT DATE_TRUNC_STR(date_time, "day") AS new_date FROM bucket
这样的查询(使用 2015-10-29T16:15:11.000Z
作为 date_time
)的结果是:
{
"results": [
{
"new_date": "2015-10-29T00:00:00Z"
}
]
}
或者,您可以使用 DATE_PART_STR(expression, part)
函数和带有字符串连接 (||
) 的 TOSTRING(expression)
函数来解析各个部分:
SELECT TOSTRING(DATE_PART_STR(date_time, "year")) || "-" || TOSTRING(DATE_PART_STR(date_time, "month")) || "-" || TOSTRING(DATE_PART_STR(date_time, "day")) AS new_date FROM bucket
结果:
{
"results": [
{
"new_date": "2015-10-29"
}
]
}
我想在 N1QL 查询中将 2015-10-29T16:15:11.000Z
转换为 2015-10-29
日期。
我该怎么做?
这里有几个选项。如果您可以容忍 ISO 8601 格式的时间并使用 DATE_TRUNC_STR(expression, part)
日期函数,最简单的方法是可行的:
SELECT DATE_TRUNC_STR(date_time, "day") AS new_date FROM bucket
这样的查询(使用 2015-10-29T16:15:11.000Z
作为 date_time
)的结果是:
{
"results": [
{
"new_date": "2015-10-29T00:00:00Z"
}
]
}
或者,您可以使用 DATE_PART_STR(expression, part)
函数和带有字符串连接 (||
) 的 TOSTRING(expression)
函数来解析各个部分:
SELECT TOSTRING(DATE_PART_STR(date_time, "year")) || "-" || TOSTRING(DATE_PART_STR(date_time, "month")) || "-" || TOSTRING(DATE_PART_STR(date_time, "day")) AS new_date FROM bucket
结果:
{
"results": [
{
"new_date": "2015-10-29"
}
]
}