Timediff作为结果集

时间:2018-12-10 13:09:25

标签: java sql

我遇到麻烦了,我正在寻找解决方案。

在这种情况下:我进行查询以从sql数据库的视图中获取信息,并将其显示在xls文件中。

问题是我在最后一列中必须显示“日期开始(开始日期)”和“日期结尾(结束日期)”之间的小时差。我已经尝试了很多东西,但是找不到解决方案。有人可以帮我吗?

import numpy as np
import numba as nb

x = np.random.uniform(-13, 1, (3500, 90, 1)).clip(0, None)
p = np.random.random((3500, 90, 70))

@nb.njit(parallel=True,fastmath=True)
def nb_myFun_sp(x, p):
    out=np.empty(p.shape,p.dtype)
    r = 2.

    for i in nb.prange(p.shape[0]):
      for j in range(p.shape[1]):
        if x[i,j,0]!=0.:
          x_=x[i,j,0]
          for k in range(p.shape[2]):
            out[i,j,k] = x_ * np.log(p[i,j,k]) + r * np.log(1.-p[i,j,k])
        else:
          for k in range(p.shape[2]):
            out[i,j,k] = r * np.log(1.-p[i,j,k])

    return out

@nb.njit(parallel=True,fastmath=True)
def nb_myFun(x, p):
    out=np.empty(p.shape,p.dtype)
    r = 2.

    for i in nb.prange(p.shape[0]):
      for j in range(p.shape[1]):
        x_=x[i,j,0]
        for k in range(p.shape[2]):
          out[i,j,k] = x_ * np.log(p[i,j,k]) + r * np.log(1.-p[i,j,k])
    return out

2 个答案:

答案 0 :(得分:1)

尝试将其计算为sql的一部分

ResultSet rs = pst.executeQuery("SELECT real_begin_date, real_end_date, first_name, last_name, TIMEDIFF(real_begin_date, real_end_date) FROM...");

答案 1 :(得分:0)

您可以通过SQL获得时差,如下所示:

DATEDIFF(hour, start_date, end_date)

如果需要小数小时数,则可以以更高的分辨率使用DATEDIFF并将结果相除:

DATEDIFF(second, start_date, end_date) / 3600.0