SELECT COALESCE(CurrMonth.Name, YTD.Name) AS Name, CurrMonth.Total AS Total, YTD.Total AS YearToDate
FROM (
SELECT Name, COUNT(Column1) AS Total
FROM Table1
WHERE Occurred_Date BETWEEN '2010-06-01' AND '2010-06-30' --Total
GROUP BY Name
) AS CurrMonth
FULL OUTER JOIN
(
SELECT Name, COUNT(Column1) AS Total
FROM Table1
WHERE Occurred_Date BETWEEN '2010-01-01' AND '2010-06-30' --YearToDate
GROUP BY Name
) AS YTD
ON CurrMonth.Name = YTD.Name
la combinación externa completa no es necesaria, pero sólo demuestra cómo es posible que necesite para manejar un caso en el que un conjunto no es un subconjunto estricto de la otra. Normalmente utilizaría la subconsulta YTD LEFT JOIN para la subconsulta del mes actual.
Otra estrategia - utilizando CASO:
SELECT Name
,COUNT(CASE WHEN Occurred_Date BETWEEN '2010-06-01' AND '2010-06-30' THEN Column1 ELSE NULL END) AS Total
,COUNT(CASE WHEN Occurred_Date BETWEEN '2010-01-01' AND '2010-06-30' THEN Column1 ELSE NULL END) AS YearToDate
FROM Table1
WHERE Occurred_Date BETWEEN '2010-06-01' AND '2010-06-30' -- (unnecessary)
OR Occurred_Date BETWEEN '2010-01-01' AND '2010-06-30'
GROUP BY Name
No estoy seguro si eso es posible sin obtener un conflicto en el conjunto de resultados. – VoodooChild