我是第一次接触oracle sql。我正在尝试理解下面的代码。有人能用简单的术语解释一下,min(amt)如何按asc顺序对结果进行排序吗?我以为min()返回一个值。为什么max(amt)给出了完全相同的结果?按min()排序给出了我想要的结果,但我试图理解它是如何做到的。
select (case when amt > 200 then '>200'
when amt > 100 then '>100'
else '>50'
end)
count(d
我正在处理Server 2005中的一个查询,该查询查看一个记录电话的表,按一天中的小时对它们进行分组,并计算一天中每小时的平均等待时间。
我有一个疑问,我认为有效,但我有困难说服自己,这是正确的。
SELECT
DATEPART(HOUR, CallTime) AS Hour,
(AVG(calls.WaitDuration) / 60) AS WaitingTimesInMinutes
FROM (
SELECT
CallTime,
WaitDuration
FROM Calls
WHERE DATEADD(day,
我有一个Oracle查询,它获取2500万条记录,没有pk或没有列被正确地分发成一个按列拆分的列。所以我想用ROW_number() over () as RANGEGROUP来做一个序列号。但是当我使用这个伪列时,它给了我一个错误:
由: org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:164):ORA-00904:“P”引起的:“RANGEGROUP”:oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:91).处的无效标识符
我正确地
假设我有一条语句,dedupe_sql,它对一组特定的记录执行去重复例程。
我可以输出哪些键已经像这样删除了它们的副本:
DECLARE
dedupe_sql VARCHAR2( 4000 BYTE ) := '...The details are not important...';
deleted_keys DBMS_SQL.VARCHAR2_TABLE
BEGIN
EXECUTE IMMEDIATE dedupe_sql
RETURNING key BULK COLLECT INTO deleted_keys;
FOR key_index I
我有一个记录字段数据收集的表,其中一个组中的每个数据片段都是一个单独的行(例如,一个项的长度和宽度是表中的每一行)。
我希望显示按最近日志条目的时间戳排序的日志结果,并按项分组。
我尝试了各种口味的最大(时间戳)在子选择,连接等,但没有joy。
基本上,就像这样(简化以便更容易输入):
item | timestamp | data
G | 1000 | yellow
D | 1001 | blue
C | 1002 | red
G | 1003 | green
D |
初学者编写查询,
我有下面的表格,其中有订单ID及其开始和结束日期,数量和材料。
OrderID Start Date End Date Quantity Material
1 4/5/2016 9:14 4/6/2016 7:00 5000 A
2 3/30/2016 15:08 3/30/2016 19:09 120 B
2 3/30/2016 19:09 3/30/2016 22:30 120 B
3 4/4/2016 0:00
我在Server 2008 R2中工作。我有一个表,其中1 "record“实际上是几个记录,因为它的一个字段具有不同的值。这个表本身有很多字段。给定“记录”的所有字段都具有相同的值,但有不同值的字段除外。我想查询所有记录并返回所有字段,但是我只想要每个“记录”的一个实例(第一个)。例如,我的表看起来是:
Field 1 Field 2 Field 3
value a value x value 1
value a value x value 2
value a value x value 3
value b
因此,我试图通过SQL查询从Oracle表中的数据创建一个概率密度函数。因此,请考虑下表:
Name | Spend
--------------
Anne | 110
Phil | 40
Sue | 99
Jeff | 190
Stan | 80
Joe | 90
Ben | 100
Lee | 85
现在,如果我想从这些数据中创建一个PDF,我需要计算每个客户在某个量子(0到50或50到100之间)中花费的次数。一个示例图应该是这样的(请原谅我可怜的ascii艺术):
5|
4| *
3| *
2| * *
1|* * * *
|_ _
需要使用按天分组的每一天的录制数量填充天数列表。这是我的问题:午夜之后记录的所有数据都将转到第二天:我需要将其转到前一天。
我试过这个:
SELECT RecordedOnDate, COUNT(RecordedOnDate) AS RowCount, COUNT(SongID) AS [Total Amount]
FROM InfoTable
WHERE (RecordedOnDate > DateAdd('h', 5, #1/23/2011#)) AND (RecordedOnDate < DateAdd('h', 5, #1/24/2011#)
我对Oracle数据库配置感到有点困惑。
我的服务器:
操作系统: Windows 2012 R2 64位
RAM: 40 RAM
Oracle: Oracle数据库12c (12.1.0.2.0) 64位
我的目标:
Oracle应该使用32 of的40 of
AMM应该被激活(我不想自己配置所有东西)
当前参数:
SQL> SHOW PARAMETER SGA
NAME TYPE VALUE
------------------------------------ ----------- ---------
我有一个包含以下字段的SQLite数据库,例如:
date (yyyymmdd fomrat)
total (0.00 format)
数据库中通常有2个月的记录。有没有人知道一个SQL查询来找出一周平均值?
我可以很容易地执行:
SELECT COUNT(1) as total_records, SUM(total) as total FROM stats_adsense
然后除以7,但除非在数据库中有x天可以被7整除,否则我不认为它是非常准确的,特别是如果记录少于7天的话。
要获得每日摘要,显然只需total / total_records即可。
有人能帮我解决这个问题吗?
有谁能解释一下甲骨文的局限性,直到为什么以下语句在MySQL中有效,但在Oracle中却收到“非组按表达式”?
SELECT order1.user_id,
order1.order_datetime,
SUM(order2.order_total)
FROM order_table order1
JOIN order_table order2 ON order1.user_id = order2.user_id
GROUP BY order1.user_id
是因为Oracle不知道如何处理order_datetime列吗?它不能
我想尝试按事件数量的降序和最近日期的顺序对此数据进行排序,按ID分组
我已经尝试过proc sql;
proc sql;
create table new as
select *
from old
group by ID
order by events desc, date desc;
quit;
我目前得到的结果是
ID Date Events
1 09/10/2015 3
1 27/06/2014 3
1 03/01/2014 3
2 09/11/2015 2
我在Oracle SQL工作。我有一个有I和日期的表,我试图按主题找到日期之间的平均时间。看起来会是这样的。
表格
SubjectID Date
1 8/01/2013 12:00:00 AM
1 8/31/2013 12:00:00 AM
1 9/10/2013 12:00:00 AM
2 1/01/2010 12:00:00 AM
2 1/21/2010 12:00:00 AM
可以说,我需要编写一个由SubjectID遍历该表的查询,记录日期之间的时间,并输
我有大量的记录在一些startDateTime字段上建立索引,并希望在按WEEKOFYEAR(startDateTime) (即EXTRACT(WEEK FROM startDateTime))分组的所有记录上选择聚合(和和计数)。我可以在EXTRACT(WEEK FROM startDateTime)上建立二级索引吗?或者,更好的是,查询会适当地使用startDateTime上的索引来优化按周分组的请求吗? 有关MySQL索引,请参阅this similar question。在云扳手世界中,这将如何处理?
对于下面的示例数据,它是ORDER BY Type,但是每个结果组都是ORDER BY MIN(Valu),没有任何聚合。
Type Valu
---- ----
B 12
B 88
B 200
B 200
A 56
A 100
A 100
C 70
C 70
所以B类型的所有记录都是首先列出的,因为该组有包含最低值(12)的记录。然后A类型记录,因为记录值为56,然后类型C记录,因为记录值为70。
有任何方法可以在SQL中进行这种类型的排序吗?
为了进一步解释,如果我