我想从Oracle中的sql日期中找到四分之一周。
我尝试在下面的查询中查找年份、季度和周。但week字段给出的是“每月的一周”,而不是“季度的一周”
选择to_char(sysdate,'YYYY')|| '-Q'||to_char(sysdate,'Q') || '-W'||
上述查询返回“2016-Q2-W3”,因为日期位于当月的第三周。
假设sysdate是2016年6月17日,我期待结果
2016-Q2-W12
我的一周范围是(周日-周六)
由于“2016年6月17日”是本季度的第12周,因此应为W12。
提前谢谢。
这将得到季度的一周(周日-周六):
SELECT TO_CHAR( SYSDATE, 'YYYY-"Q"Q-"W"' )
|| ( 7 + TRUNC( SYSDATE + 1, 'IW' ) - TRUNC( TRUNC( SYSDATE, 'Q' ) + 1, 'IW' ) ) / 7;
AS "Current Time"
FROM DUAL
解释:
NEXT\u DAY(日期值),“Sunday”)-7(取决于NLS\u TERRITORY设置)或TRUNC(日期值1,“IW”)-1(更短,不取决于任何设置)查找给定日期当天或之前的周日
TRUNC(date\u value,'Q')
给出包含值的季度第一天的日期(即1月1日、4月1日、7月1日或10月1日)
(TRUNC(date\u value 1,'IW')-1)-(TRUNC(date\u value,'Q')1,'IW')-1)
-可以通过取消术语来简化问题内容: 对我来说,这是一个永无止境的话题,我想知道我是否会忽略某些事情。本质上,我在应用程序中使用两种类型的SQL语句: 具有“后备”限制的常规查询 排序查询和分页查询 现在,我们讨论的是针对具有几百万条记录的表的一些查询,再加上另外五个具有几百万条记录的表的查询。显然,我们几乎不希望全部获取它们,这就是为什么我们有上述两种方法来限制用户查询的原因。 情况1 确实很简单。我们只是添加了一个额外
问题内容: 这是我想阻止在服务器上运行的那种查询的示例: 该查询(或其他类似查询)可能通过Oracle JDBC瘦驱动程序访问了我的Oracle服务器。我愿意阻止该查询在JDBC配置级别,数据库服务器配置级别或通过架构内的用户权限运行。我希望用户能够继续运行正常的选择/插入/更新/删除查询。老实说,如果没有可用的PL / SQL类型命令,而只有标准SQL,我会很高兴。 更新 我还应该提到,我希望用
问题内容: 您能否将我引导到与Oracle中此查询等效的内容: 谢谢 问题答案: 查询从中检索所有行,然后在中检索行数。这样做只是性能优化:它使您不必进行两次查询。 如果性能不是问题,那么Oracle的等效项将是: 如果您可以重写客户端,则可以在一个查询中执行以下两项操作:
我需要通过传递这些参数来获取日期 年份 我在类中查找构造函数,但不包含这些参数。
问题内容: 我正在用查询查询我的elasticsearch索引。查询本身的结构与此类似 我希望能够确定所有这些查询中哪一个是与结果匹配的查询。是否有内置的elasticsearch方法允许这样做,还是我必须手动进行? 问题答案: 您可以使用命名查询,然后在结果中获得匹配的查询的名称。 然后,在结果中,您将获得一个数组,其中包含与文档匹配的查询的名称。
问题内容: 我到处都在寻找解释,以了解选择语句中的子查询如何工作,但由于解释非常模糊,我仍然无法理解该概念。 我想知道您如何在oracle的select语句中使用子查询以及它的确切输出。 例如,如果我有一个查询,希望显示这些表中员工的姓名及其管理的个人资料数量 员工(EmpName,EmpId) Profile(ProfileId,…,EmpId) 如何使用子查询? 我当时想在select语句中需