Эта такая (документированная) особенность поведения GROUP BY, не соответствующая стандарту SQL.
Пока есть два способа это обойти:
1. Выполнять скалярные подзапросы по-отдельности.
2. Использовать запрос типа такого:
SELECT count() - 1 FROM (SELECT CounterID FROM test.hits WHERE CounterID = 123 UNION ALL SELECT toUInt32(1))
- мне это решение не нравится, так как оно неудобное и неестественное.
SELECT amountFROM ( SELECT sum(value) AS amount FROM payments WHERE (date = toDate('2017-01-12')) UNION ALL SELECT toFloat64(0)) LIMIT 1Добрый день!Какие-нибудь новости?