SELECT COUNT(*) AS `ALL`
FROM `logs` WHERE `base` = 1
UNION
COUNT(*) AS `today`
FROM `logs`
WHERE `base` = 1
AND `unixTime` - 86400 > 1482908996
Итогом возвращается только набор из ALL, без today.
В чем может быть проблема, что я делаю не так?
Используйте UNION ALL. Простой UNION — это UNION DISTINCT.
Также возможно, что Вы просто забываете, что получаете ДВЕ записи из одного поля каждая, и смотрите только первую запись.
И ещё: давать имя полю второго запроса бессмысленно, оно будет проигнорировано.
UPD: Если же нужно получить ОДНУ запись с ДВУМЯ полями, то
SELECT COUNT(*) AS `ALL`,
SUM(CASE WHEN `unixTime` - 86400 > 1482908996 THEN 1 ELSE 0 END) AS `today`
FROM `logs`
WHERE `base` = 1
UPD2: Поскольку СУБД - MySQL, запрос можно упростить:
SELECT COUNT(*) AS `ALL`,
SUM(`unixTime` - 86400 > 1482908996) AS `today`
FROM `logs`
WHERE `base` = 1
Продвижение своими сайтами как стратегия роста и независимости