标签: date-arithmetic

使用365天创建视图

如何创建View一年中的所有日子.view应该填写从JAN-01到Dec-31的日期.我怎样才能在Oracle中执行此操作?

如果当前年份为365天,则view应该有365行日期.如果当年有366天,view应该有366行日期.我希望view有一个类型的列DATE.

oracle plsql date-arithmetic oracle11g

4
推荐指数
1
解决办法
2867
查看次数

Oracle SQL - 选择月 - 当前年(-1)到月 - 当前年之间的日期

我有一个列中包含日期以及表中的其他列.我希望能够:

显示与上一年的9月1日到当年7月30日的日期相匹配的所有行.

我知道有些事情需要做,只是不确定日期的具体语法..

SELECT * FROM xx
WHERE ASM_DATE BETWEEN TRUNC(SYSDATE-1,'YY') AND TRUNC(SYSDATE,'YY');
Run Code Online (Sandbox Code Playgroud)

这就是我到目前为止......

我知道我可以使用SYSDATE和'YYYY'获取当前年份,然后在前一年做-1,我不确定如何指定除此之外的月份.任何帮助都会很棒.

sql oracle date-arithmetic

4
推荐指数
1
解决办法
2万
查看次数

在java中使用sql DATEADD函数

当我使用DATEADD运行查询时,似乎数据库无法识别此功能.当我刚跑的时候我也会select DATEADD(Month, -3, GETDATE()):

Error code -1, SQL state 42X01: Syntax error: Encountered "<EOF>" at line 1, column 36.
Run Code Online (Sandbox Code Playgroud)

你可以看到我从hsqldb-2.2.9添加了JAR文件

在此输入图像描述

我在这里错过了什么?

sql derby dateadd date-arithmetic

4
推荐指数
1
解决办法
7466
查看次数

仅连续 3 个月的 SQL 记录

我有 emp 表。考勤表:

emp_No Absent_Date
-------------------
111     01/03/2012
111     05/05/2012
222     13/02/2012
222     01/03/2012
222     02/03/2012
222     29/04/2012
222     09/09/2012
333     15/05/2012
333     18/09/2012
333     19/09/2012
Run Code Online (Sandbox Code Playgroud)

我需要返回如下所示的行:

emp_No Absent_Date
-------------------
222     13/02/2012
222     01/03/2012
222     02/03/2012
222     29/04/2012
Run Code Online (Sandbox Code Playgroud)

因为只有连续 3 个月缺席的 emp 没有 222。

sql sql-server date-arithmetic

4
推荐指数
1
解决办法
4703
查看次数

用PHP计算2小时之间的差异

我有两次 - 例如 - 当前时间 - 08:24和日期是2013年1月2日以dd/mm/yyyy格式,我有另一次在13:46,日期是2012年12月31日.那么,我如何使用PHP计算2小时之间的差异.(即42.63小时)提前致谢.

php time datetime date-arithmetic

4
推荐指数
1
解决办法
3万
查看次数

两周前选择查询

在我的数据库表中,我有一个日期字段(varchar字段以yy-mm-dd格式保存日期),现在我想选择两周前的记录.我该怎么做 ?

mysql select date-arithmetic

4
推荐指数
1
解决办法
9055
查看次数

检查日期是“明天”还是“后天”

我正在寻找获得“明天”的方法从接收到日期的函数返回”和“后天”

当前日期:

《2015/04/24 18:15:00》

未来的日期:

“2015/04/25 02:40:00”

该函数应在此处返回“明天”。我尝试查找一些函数,但它们都返回 0 而不是 1。

function days_between(date1, date2) {

    // The number of milliseconds in one day
    var ONE_DAY = 1000 * 60 * 60 * 24

    // Convert both dates to milliseconds
    var date1_ms = date1.getTime()
    var date2_ms = date2.getTime()

    // Calculate the difference in milliseconds
    var difference_ms = Math.abs(date1_ms - date2_ms)

    // Convert back to days and return
    return Math.round(difference_ms/ONE_DAY)

}
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

javascript date date-arithmetic

4
推荐指数
1
解决办法
1万
查看次数

从now()函数中减去小时数

我们有一台24x7全天候运行的机器.每天我都会报告每小时生产的件数.在我们的例子中,一个工作日意味着'2015-06-16 06:00:00'到'2015-06-17 06:00:00'.

这是我的代码:

select date_trunc('hour', t_el_eventlog.eventtime at time zone 'CET') as hours,
       count (distinct t_el_eventlog.serialnumber) as count
from t_el_eventlog
where eventtime at time zone 'CET' between '2015-06-16 06:00:00'
                                       and '2015-06-17 06:00:00'
and sourceid = '44'
group by hours
order by hours asc
Run Code Online (Sandbox Code Playgroud)
  • 我的Postgres版本:"PostgreSQL 9.4.1,由Visual C++编译构建1800,32位"

  • 我正在处理的两列数据类型:

    eventtime timestamp without time zone
    sourceid  integer NOT NULL
    
    Run Code Online (Sandbox Code Playgroud)
  • 时区是"欧洲/柏林".

通过上面的查询,我得到了我想要的信息,但我必须每天更改日期.是否可以将该now()功能用作我的情况的默认值,这样我就不必每天手动更改日期?

sql postgresql timezone datetime date-arithmetic

4
推荐指数
2
解决办法
2万
查看次数

如何使用Oracle获得年,月,日的年龄

我正在尝试使用以下格式为每个人打印年龄:

例如:19年,8个月,13天.

我已经google了很多,我注意到有一个特定的函数来计算日期之间的差异DATEDIFF.

但是这个功能不存在SQL*Plus,所以我继续尝试使用MONTHS_BETWEEN()和一些运算符.

我的尝试:

SELECT name , ' ' || 
    FLOOR(MONTHS_BETWEEN(to_date(SYSDATE),to_date(date_of_birth))/12)||' years ' ||  
    FLOOR(MOD(MONTHS_BETWEEN(to_date(SYSDATE),to_date(date_of_birth)),12)) || ' months ' || 
    FLOOR(MOD(MOD(MONTHS_BETWEEN(to_date(SYSDATE),to_date(date_of_birth)),12),4))|| ' days ' AS "Age"
FROM persons;
Run Code Online (Sandbox Code Playgroud)

我的问题依赖于获得日子.我不知道如何计算天数,使用此功能('尝试除以4或30); 我认为我的逻辑很糟糕,但我无法弄明白,任何想法?

sql oracle date-arithmetic

4
推荐指数
1
解决办法
2万
查看次数

SQL日期转换结果为"无效数字格式模型参数".

我必须selectOracle 11g数据库中获取一些数据,但我似乎无法弄清楚为什么后续select查询失败:

SELECT
  INFO_ID,
  INFO_DETAIL, 
  IMPORTANT_FLG, 
  DELETE_FLG, 
  CREATE_TIME, 
  DISPLAY_ORDER
  FROM  TABLE_NAME
  WHERE TO_DATE(TO_CHAR(CREATE_TIME, 'YYYY/MM/DD'), 'YYYY/MM/DD')
  BETWEEN TO_DATE(TO_CHAR(:fromDate, 'YYYY/MM/DD'), 'YYYY/MM/DD') AND TO_DATE(TO_CHAR(:toDate, 'YYYY/MM/DD'), 'YYYY/MM/DD')
  ORDER BY IMPORTANT_FLG DESC NULLS LAST , DISPLAY_ORDER ASC NULLS LAST, CREATE_TIME DESC, INFO_ID ASC
Run Code Online (Sandbox Code Playgroud)

查询失败,并显示以下错误消息:

ORA-01481: invalid number format model
01481. 00000 -  "invalid number format model"
*Cause:    The user is attempting to either convert a number to a string
       via TO_CHAR or a string to a number via TO_NUMBER …
Run Code Online (Sandbox Code Playgroud)

sql oracle date-arithmetic oracle11g date-formatting

4
推荐指数
1
解决办法
3万
查看次数