我试图在Oracle 12c数据库表中执行批量数据更新,以获得与日期范围相匹配的记录。日期有时间信息,所以我使用trunc()函数去掉时间组件。我可以使用此条件成功地执行select查询,但不知何故,使用同一where子句进行的更新与记录不匹配。有人知道怎么回事吗?
select count(*) from TABLE_NAME
where TRUNC(DATE_FIELD) in ('30-Apr-13', '31-May-13', '31-Jul-13')
-- 554
但是..。
update TABLE_NAME set SOME_FIE
我的SQL有点生疏,我设法从表中检索相同类型的最新记录的I(基于日期字段)的唯一方法是使用嵌套的select,但我怀疑必须有一种方法可以对having子句或其他更有效的方法进行同样的操作。
假设唯一的列是ID、TYPE和DATE,我当前的查询是:
select ID from MY_TABLE,
(select TYPE as GROUP_TYPE,
max(DATE) as MAX_DATE
from MY_TABLE group by TYPE)
where TYPE =
我想创建每小时一次的报告,这个查询运行得很好。
SELECT
FORMAT(PingLogDate,'yyyy-MM-dd-HH:00:00') AS CalculatedTime,
COUNT(PingLogID) AS PingCount
FROM
tbl_PingLog
GROUP BY
FORMAT(PingLogDate,'yyyy-MM-dd-HH:00:00')
ORDER BY
FORMAT(PingLogDate,'yyyy-MM-dd-HH:00:00')
但是我支持SQL Se
我正在设计一种新的编程语言。
我正在设计一个语法来实现查询。目前它就是这样工作的。
数据库可以通过实体对象.
访问
在这个示例中,我有"entity.manufacturers“和"entity.products”表
要获得ID为1的制造商,请执行以下操作:
var @manufacturer = entity.manufacturers where id = 1;
查询“制造商”的所有产品:
// Get all manufacturers products
var @products = entity.products under @manufact