Если SQL сервер версии 2008 или старше, то можно сделать так:
SELECT
COUNT(DISTINCT [orderT].[user]) as [Orders]
, [Hours].[Hour]
FROM
(
VALUES (0), (1), (2), (3), (4), (5), (6), (7), (8), (9), (10), (11), (12), (13), (14), (15), (16), (17), (18), (19), (20), (21), (22), (23)
) AS [Hours]([Hour])
LEFT OUTER JOIN
[orderT]
ON
datepart(hh, [orderT].[date]) = [Hours].[Hour]
WHERE
[orderT].[Operation] LIKE 'newOrder'
AND [orderT].[date] >= Convert(datetime, '2014-11-06 00:00:00')
AND [orderT].date < Convert(datetime, '2014-11-06 23:59:59')
GROUP BY
[Hours].[Hour]