经过大量调查后,我在SQL级别以及node.js级别都提供了解决方案。
要使用SQL查询,您可以使用下面的查询IBM DB2 iSeries数据库转换7位数的公历日期为正常日期 -
SELECT DATE(((1160920 /10000)+1900)|| '-' ||
(MOD(1160920 ,10000) /100)|| '-' ||
MOD(1160920 ,100))
FROM
SYSIBM.SYSDUMMY1
要使用Node.js的使用下面的代码将完全转换
执行相同的转换
var dateFormat = require('dateformat');
function julianIntToDate(n) {
var yy = ((n/10000)+1900);
var year = Math.floor(yy);
var mm = ((n % 10000)/100);
var mon = Math.floor(mm);
mon = leadingZero(mon);
var dd = (n % 100);
dd = leadingZero(dd);
console.log("Year--"+year);
console.log("Month--"+mon);
console.log("Day--"+dd);
var now = new Date(year+"-"+mon+"-"+dd);
console.log("Converted Date-->"+now);
orderDate = dateFormat(now, "yyyy-mm-dd'T'HH:mm:ss-0500");
return (orderDate);
function leadingZero(value) {
if (value < 10) {
return "0" + value.toString();
}
return value.toString();
}
}
console.log("Julian Date--->"+1160920);
console.log("Normal Date--->"+julianIntToDate(1160920).toString());
您是否尝试先谷歌它?在StackOverflow上有很多答案,只需使用搜索。 – Molda
无论您是“Julian约会”的意思,1160920都不可能对应于Gregorian日历中的2016年9月20日。 – mustaccio
这不是Julian日期,它是一个常规日期,只有7位数字存储为CYYMMDD。 – Charles