我需要从两个表中选择计数,这两个表共享一个公共列,即clientId
,并将总数除以clientIds
,给定日期和dateadded
列在这两个表中都是日期时间格式。sql server - 从报表的两个表中获取计数和列值
例如,测试结果将显示:
ClientId Total1 Total2
aaaa 1 2
bbbbb 43 45
ccccc 123 355
等为2011-03-25
我目前拥有的是
select
(select clientid,count(*) as total1 from TFeed where dateadded = getdate()
group by clientId),
(select clientId, count(*) as total2 from WFeed where dateadded = getdate()
group by clientid)
这当然是错误的。 错误:子查询未与EXISTS一起引入时,只能在选择列表中指定一个表达式。此外,为了考虑,这些表格非常大 - 超过300万条记录并不断增长。任何帮助表示赞赏
编辑:
了时间 - 如果dateadded = '2011-03-25 12时零零分34秒0011',我哪有时间比较 GET dateadded = @getdate()和选择今天的所有记录。
虽然我的查询仍在运行 - 关闭主题问题...因为这是一个报告查询,我想定期运行它来更新总数,以便当客户端打开网页或点击报告时,它将提供总计而无需运行查询并从数据库中选择最后的总计。那么我需要有一个不同的查询或每隔一小时左右运行一次。
感谢执行它但它仍然在运行 - 采取这么长的时间......差不多一个小时......就像我说的那样,在这两个表中大约有4百万条记录 – vbNewbie 2011-03-25 17:34:44
你有没有关于clientid的指示? – dfb 2011-03-25 17:39:51
对不起没有客户IdI – vbNewbie 2011-03-25 17:46:58