Вот T-SQL:
SELECT
'Total Tournaments' AS Name, COUNT(a.location) AS Value
FROM
(SELECT location
FROM [dbo].[TournamentBatchItem]
GROUP BY TournamentName, location) a
UNION
SELECT
'Outdoor Tournaments' AS Name, COUNT(a.location) AS Value
FROM
(SELECT location
FROM [dbo].[TournamentBatchItem]
GROUP BY TournamentName, location) a
WHERE a.location = 'Outdoor'
UNION
SELECT
'Indoor Tournaments' AS Name, COUNT(a.location) AS Value
FROM
(SELECT location
FROM [dbo].[TournamentBatchItem]
GROUP BY TournamentName, location) a
WHERE a.location = 'Indoor'
Вывод будет примерно таким:
Name | Value
--------------------+-------
Indoor Tournaments | 0
Outdoor Tournaments | 1
TotalTournaments | 1