我有一个SQL查询:
select dateName(month, DateAccessed) "Month"
, count(1) totalVisits
, count(distinct l.userName) UsersVisit
from and where clause goes here
group by dateName(monthDateAccessed)
order by Month
Run Code Online (Sandbox Code Playgroud)
我得到的输出是
Month totalVisits UsersVisit
April 100 25
February 200 35
July 300 45
March 400 55
May 500 65
Run Code Online (Sandbox Code Playgroud)
但我想要的输出是这样的:
February 200 35
March 400 55
April 100 25
May 500 65
July 300 45
Run Code Online (Sandbox Code Playgroud)
我怎么能得到这个?
我需要找到两个差date的年,但年应该是十进制例如,我需要找到之间的差异16-jun-2010,以30-Sep-2014
它应该是4.30年
我尝试按照方式选择DATEDIFF(YY,'16 -jun-2010','30-sep-2014')作为YearsOfServices
它只给我4个
输入:unix_timestamp('01 / 15/2018 15:26:37','mm / dd / YYYY hh:mm:ss')
预期输出比utc输入时间晚4小时,即01/15/2018 11:26:37
我知道在蜂巢中有date_sub函数,但它仅用于从给定的时间戳中减去天数。但是我需要知道是否有一种方法可以减去小时,分钟或秒。
我还尝试了以下类似操作,因为EDT时区比UTC落后4小时(但输出错误):
SELECT to_date(from_UTC_timestamp(unix_timestamp('01/15/2018 15:26:37', 'mm/dd/YYYY hh:mm:ss')*1000, 'EST6EDT')) as earliest_date; -- OUTPUT: 2017-12-31 (wrong)
Run Code Online (Sandbox Code Playgroud)
那么有人可以帮我吗?
我在查询中有一个日期字段,我确实希望得到这样的GROUP BY报告:
DATE COUNT
2010-01 10
2010-02 2
...
2010-12 24
2012-13 34
Run Code Online (Sandbox Code Playgroud)
在SQL Server上获取此功能的正确语法是什么?
我遇到了MySQL的STR_TO_DATE函数问题.例如,这段代码:
SELECT STR_TO_DATE("Saturday October 23 2010 11:00 AM", "%W %M %d %Y %h:%m %p");
Run Code Online (Sandbox Code Playgroud)
输出:
2010-00-23 11:00:00
Run Code Online (Sandbox Code Playgroud)
除了这个月,为什么一切都正确?这是我的语法错误吗?
我在oracle上有关于日期函数的问题.
我有下表
statistic_table(
pages AS varchar(10),
date_created AS date
);
Run Code Online (Sandbox Code Playgroud)
我有以下sql
SELECT COUNT(*) FROM statistic_table WHERE date_created BETWEEN sysdate-5 AND sysdate-1
and
SELECT COUNT(*) FROM statistic_table WHERE date_created BETWEEN to_date('12-AUG-2011') AND to_date('16-AUG-2011');
Run Code Online (Sandbox Code Playgroud)
问题是,为什么它会返回不同的数字.假设sysdate-5返回12-aug-2011并且sysdate-1返回16-aug-2011
任何帮助将非常感激!
干杯,
我在尝试着
NULL日期的记录,将日期增加 1 天。我可以使用下面的最新日期查询来获取最新日期。我需要先执行此操作,因为表中的日期未按顺序排列。如果需要,我可以运行此查询,手动将其写下来,然后UPDATE根据此日期运行查询。我宁愿在没有手动过程的情况下运行所有内容。
我在问题底部的最后一个查询是我尝试更新日期的测试查询,但是我没有运气让它工作。
表(日期不分先后)
id date
----- ----------
10500 2013-08-18
10501 2013-08-16
10502 2013-08-17
10503 2013-08-19
10504 NULL
10505 NULL
...
11800 NULL
11801 NULL
Run Code Online (Sandbox Code Playgroud)
选择最晚日期(起点UPDATE)
SELECT date
FROM my_table
ORDER BY date DESC
LIMIT 1
Run Code Online (Sandbox Code Playgroud)
更新NULL日期(不起作用)
UPDATE my_table
SET date = DATE_ADD((SELECT date FROM my_table ORDER BY date DESC LIMIT 1), INTERVAL 1 DAY)
WHERE date IS NULL
ORDER …Run Code Online (Sandbox Code Playgroud) 我想获得当月的第一个和最后一个日期(如30日或31日).如何通过使用postgress sql查询获得此日期.
我想查询一些工作日之间的数据,如下:
该查询将在每周一自动运行,因此我想为其设置一个动态条件,以便它自动选择那一天,而不依赖于将来运行的任何一天。
例如,如果今天是 2018 年 1 月 8 日星期一:
我想在 WHERE 子句中设置该条件。现在我以这种方式查询它,使用恒定的日期,例如上周的数据:
SELECT *
FROM thisTable
WHERE Date(operation_date) BETWEEN '2018-06-10' AND '2018-06-16'
Run Code Online (Sandbox Code Playgroud)
数据库管理系统:亚马逊红移
我无法从日期字符串2019-01-21T19:02:25Z 中获取日期对象
select to_char(to_date('2019-01-21T19:02:25Z','yyyy-mm-ddThh24:mi:ssZ'),'dd/mm/yyyy hh24:mi:ss') from dual;
Run Code Online (Sandbox Code Playgroud)
产量
ORA-01821:无法识别日期格式 01821. 00000 - “无法识别日期格式” *原因:
*操作:
我可以知道使用什么日期格式。
sql ×9
mysql ×3
oracle ×3
date ×2
sql-server ×2
sqldatetime ×2
datetime ×1
group-by ×1
hive ×1
hiveql ×1
iso8601 ×1
postgresql ×1
sql-update ×1
t-sql ×1