我在postgres中有一个看起来像这样的查询
SELECT events.startDate, managers.id, manager.name, manager.goneDate
FROM mentions, managers, events, categories
WHERE
managers.id = mentions.manager_id AND
events.id = mentions.event_id AND
categories.id = events.category_id
我还有一个查询,我需要使用每行的events.startDate的结果来加入它,该查询看起来像这样......
SELECT round((cast count(manager.id)
FROM mentions, managers, events
WHERE
managers.id = mentions.manager_id AND
events.id = mentions.event_id AND
events.eventdate >= (to_date('2012-08-18', 'YYYY-MM-DD') - INTERVAL '90 days') AND
events.eventdate <= '2012-08-18'
AND mentions.manager_id = 1
group by managers.id) as decimal)
/
(SELECT count(managers.id)
FROM mentions, managers, events
WHERE
managers.id = mentions.manager_id AND
events.id = mentions.event_id AND
events.eventdate >= (to_date('2012-08-18', 'YYYY-MM-DD') - INTERVAL '90 days') AND
events.eventdate <= '2012-08-18'
AND mentions.manager_id = 1
group by managers.id)
* 100), 2) as "result"
基本上我需要将结果加到我的第一个查询的“结果”而不是第二个查询的硬编码日期(2012-08-18),我需要为每一行使用events.startDate第一个查询。