- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我很惊讶这个问题还没有被问到。我一定错过了一些非常明显的东西,我已经准备好接受所有的反对票和 3 秒的回答。
在 MSSQL 中,您可以调用 GETDATE()
而不必依赖于数据库表,但在 Oracle 中,SYSDATE
必须来自 DUAL。有没有办法在不通过 DUAL 的情况下获取 Oracle 中的当前日期?
编辑
显然,这与 SYSDATE
没有太大关系,但更多的是我对它的错误使用。请参阅以下 WHERE 子句:
WHERE (extract(YEAR from ORDER_DATE) = (case when extract(month from SYSDATE()) < 11 then extract(year from SYSDATE()) else extract(year from SYSDATE())+1 end)
以上是行不通的,从这里的答案来看,似乎不建议在其中添加 dual 。这里的最佳解决方案是什么?
最佳答案
避免在 sysdate 之后写 ()。
示例 - 在 WHERE 子句中使用您的 CASE(不使用 DUAL):
create table T ( dt date ) ;
insert into T ( dt ) values ( sysdate ) ;
-- just write SYSDATE, not SYSDATE()
select *
from T
where ( extract ( year from dt ) ) = (
case
when extract( month from sysdate ) < 11 then
extract( year from sysdate )
else
extract( year from sysdate ) + 1
end
) ;
-- output
DT
---------
23-MAY-19
关于sql - 在没有 DUAL 表的情况下使用 SYSDATE(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56280099/
目的和我到目前为止所得到的 我正在尝试创建一个 View 来检查缺失的劳动力交易。该 View 将被输入到 Crystal 报表中。 在本例中, View 应采用 sysdate+30 和 sysda
我需要选择时间戳介于现在和过去 5 分钟之间的行。我该怎么做?类似的东西: select * from tableName where timestamp between sysdate and up
我想说下面的内容,但用 SYSDATE 替换日期,但两者之间的时间是我想要调整的。语法是什么? SYSDATE+'0001' 和 SYSDATE+'2359' 之间的 mydatefield ...
这个问题在这里已经有了答案: sysdate difference (2 个答案) 关闭 9 年前。 如果您运行此查询,并且结果需要 3 分钟才能生成......... select to_char
加法 select sysdate,add_months(sysdate,12) from dual; --加1年 select sysdate,add_months(sys
您好我被困在一个 oracle 查询中,我想根据当前年份检索前两年的数据,比如 2013 年,所以我想检索 2011 年和 2012 年的所有记录我已经完成了以下查询但是我卡在日期格式上 我对 Ora
我正在尝试更改 Oracle SYSDATE 的格式,以便它在运行 PL/SQL 过程时使用特定格式。这种格式确实是不必要的,但我正在更新一个旧表并且由于某些集成需要维护这种格式。我的问题是我无法复制
这个问题在这里已经有了答案: Comparing with date in Oracle sql (2 个回答) 关闭8年前。 数据库:Oracle 简化版: 表T有一列:D(DATE类型) 现在 t
select TO_CHAR(to_date(sysdate, 'DD-MON-YYYY'), 'DAY') FROM DUAL; 当我运行这个查询时,输出是:SUNDAY。但我们知道今天是星期二(1
我正在从 Oracle 到 Sybase 服务器的数据库链接上运行查询。 其中 where 子句是对日期的限制,我希望它与 sysdate 相关联,因此如下所示: select * from some
我想通过附加 SYSDATE 来更改表名到它。比如我想换表EXAMPLE_TABLE至 EXAMPLE_TABLE_05_01_2015 ,但我想从 SYSDATE 获取日期. 我准备了以下内容,但它
可以更改CodeRush sysDate()返回的日期格式。它返回mm / dd / yy,而我要dd / mm / yyyy。使用CodeRush for Delphi。 最佳答案 该函数使用Del
我有一个过程。它采用 Date 类型的日期参数。我想知道的是其他用户将 sysdate 发送到我的过程。他们将 sysdate 发送到我的过程的格式是什么? 例如:01/02/2021 或 01/02
我尝试使用以下命令,但显然它是无效的 SQL: CREATE OR REPLACE TRIGGER QUESTION_DATE BEFORE INSERT ON QUESTION FOR EACH R
我有一个过程。它采用 Date 类型的日期参数。我想知道的是其他用户将 sysdate 发送到我的过程。他们将 sysdate 发送到我的过程的格式是什么? 例如:01/02/2021 或 01/02
我正在开发一个使用 JDBC 在数据库上执行查询的 Java 应用程序,并且在一个非常简单的更新查询中遇到以下问题。 所以我有这个查询(实际上不完整): sb.append("UPDATE coda_
我需要限定来自 Oracle 数据库的查询以获取基于特定日期范围的报告 第一个查询 5pm-7am(昨天下午 5 点到今天早上 7 点之间) 第二个查询 早上 7 点到下午 5 点((昨天下午 5 点
正在处理以下查询。 SELECT MIN(departure_date), ch_invoice.invoice_id FROM ch_invoice INNER JOIN ch_trip ON ch
我有一个将日期值插入测试表的 prepareStatement。日期值可以是来自参数的值或 NULL。现在,如果日期值为空,我想在数据库中插入 sysdate。我不想使用 new java.util.
我有一个目标学生。还有一个属性叫做到期日。这需要使用数据库 sysdate + 值(1000)进行设置。那么我怎样才能用jpa保存呢?我不能在 jpa 准备好的语句查询本身上执行此操作吗? 如果我使用
我是一名优秀的程序员,十分优秀!