在Postgres 9.3下,我试图运行一个查询来总结表a中的一些数据:
| Entry date-Date | Customer ID-charvar | received-Boolean | Processed-Boolean | finalized-Boolean | billed-Date |
我希望使用count(case when)按当前周、月份、然后所有时间将所有记录计数到表b中:
|report date | Total Received Weekly | Received Monthly | Received all of time | so on...
我很难思考如何写这个
我有张这样的桌子:
Region Date Cases
France 1-1-2014 5
Spain 2-5-2014 6
France 3-5-2014 7
...
我想要做的是像这样运行一个聚合函数,对每个区域的总病例数进行分组。
select region, datepart(week, date) weeknbr, sum(cases) cases
from <table>
group by region, datepart(week, date)
order b
我必须在我的应用程序中实现图表。假设我有一个表结构
DECLARE @SONGS TABLE
(
[ID] INT IDENTITY,
[SONGNAME] VARCHAR(20),
[CREATEDDATE] DATETIME
)
INSERT INTO @SONGS
SELECT 'SONG1','20091102' UNION ALL
SELECT 'SONG2','20091103' UNION ALL
SELECT 'SONG3','20091107
我正在尝试使用postgres对两个不相关的表进行求和。使用MySQL,我会这样做:
SELECT SUM(table1.col1) AS sum_1, SUM(table2.col1) AS sum_2 FROM table1, table2
这应该是一个包含两个列的表,分别名为sum_1和sum_2,但是,postgres没有为这个查询提供任何结果。
有什么想法吗?
我是聚光灯的初学者。我有一个问题,每15分钟的平均计算按计算列。示例表可以如下所示:
id time-stamp value
1 7/1/2016 12:01:01 AM 1.1
2 7/1/2016 12:05:03 AM 0.9
3 7/1/2016 12:08:04 AM 1.2
4 7/1/2016 12:09:06 AM 0.8
5 7/1/2016 12:12:09 AM 0.4
6 7/1/2016 12:14:10 AM 0.6
7 7/1/2016 12:15:12 AM 1.3
如何根据工作日或周末从表中选择数据,例如,如果日期是工作日,那么从表中只选择历史工作日数据&如果日期是周末,则只选择历史周末数据。
我试过这样做,但没有运气。
DECLARE @MyDate DATE = '08/17/2013'
SELECT datename(dw,@MyDate)
SELECT * FROM MyTable
WHERE
datename(dw,DateColumnInTable) IN (
CASE WHEN (datename(dw,@MyDate) IN ('Saturday','Sunday')) TH
我有一个查询,我应该从一个表中选择记录,以便每天插入另一个表一次(选择进入)。对我来说,这是一个大而又复杂的查询,因为我想做它--1查询。下面是我想要更改的查询(它有许多内部联接和按变量分组):
Select RIGHT('0'+LTRIM(DATEDIFF(MINUTE,MIN(CASE WHEN [EnteranceDevice] IN(1)
THEN CAST(EventDate as datetime) ELSE NULL END),(Select Cast([Start] as time)
as Start FROM [dbo].[Period] Where s
我有一个SQL查询,用于显示在指定日期范围内按天创建的工作单数。当我查询单个日期范围时,例如2016年3月1日到2016年3月31日,它工作得很好。
SELECT DATEADD(dd, DATEDIFF(dd, 0, dateCreated), 0) the_date,
COUNT(*) work_order_count
FROM WorkOrder
where active = 1 and
dateCreated >= '3/1/2016' and
dateCreated <= '3/31/2016 23:59:59'
GROUP BY DATE
你好,我必须创建一份关于药房出站使用量的报告。有4种出站类型: SMS、Call、Email和P。
我想得到每种药房的总数和每种药房的总数。
到目前为止,这是我的问题。
select PharmacyID, count(*) as total
from OutboundCallData
where datepart(year, DateReceived) = 2014 and datepart(month, datereceived) = 1
and (NotificationMode = 'sms' or NotificationMode = 'cal
我有一个失败的SQL,因为case语句中的事件日期不是group by或聚合函数的一部分。如果我按事件日期分组,那么我将使聚合函数变得无用,因为它将针对每个时间差异有单独的行。
所以我想要做的是根据case语句的结果进行分组,即'Days‘或'Nights',我有一个相当垃圾的解决方案,就是将数据放入一个临时表中,然后从包含聚合函数的临时表中进行选择,但我相信肯定有更好的方法。
我想要的似乎在逻辑上类似于having子句,但用于select。
SELECT
d.DeptName,
CASE
WHEN DATEPART(hh, nmm
基于下表
id Title Date Metadata
------------------------------------
1 A 08/01/2010 M1
1 A 10/05/2010 M2
1 A 03/15/2011 M3
2 B 09/20/2010 M1
2 B 01/15/2011 M2
3 C 12/15/2010 M1
输入变量将是开始日期和结束日期。举个例子,
@startDate
我每天使用SQL查询生成一个Excel:
SELECT COUNT(res_id) as TotalReservation
FROM bup_vw_res_reservation
WHERE res_deleted = 0
AND DATEPART(DAY,res_date_start) = 1
每当我想要更改日期时,我都会执行此查询。要在我的Excel文件中生成一个工作表,我需要在我的页面中打开和关闭30个连接。如果我需要为不同的公司制作另一个工作表,那么我需要再次执行相同的30查询。页面变得非常慢:(
有没有其他方法可以在一次查询中得到
我正在阅读Postgres的查询优化器的统计估计器代码,以了解它是如何工作的。
作为参考,Postgres的查询优化器的统计估计器估计Postgres计划树中操作(例如联接、选择)的输出大小。这允许Postgres在执行查询的不同方式之间进行选择。
Postgres的统计估计器使用有关每个关系列的内容的缓存统计信息来帮助估计输出大小。两个关键保存的数据结构似乎是:
最常用值列表:存储在该列中的每个最常见值的列表以及它们在列中出现的频率。A列中存储的数据的直方图。
例如,给定表:
X Y
1 A
1 B
1 C
2 A
2 D
3 B
Y最常见的值列表将包含{1:0.5, 2:0.333}。
但
所以我想查询表,它显示每月和年的成本总和应该是动态的,我写了这个查询,但它没有成本总和。
SELECT *
FROM (
SELECT TOP 100 2003 + ROW_NUMBER() OVER (ORDER BY PostingDate) AS Yr, SUM(Amount) as Total
FROM table1
GROUP BY PostingDate
) Years
WHERE Yr <= YEAR(GETDATE())
它应该是
month cost year
jan 12.00 2011
feb 10.00 2011