2
에서 나는 다음과 같이 의해 ROLLUP, 그룹을 왼쪽을 갖는 쿼리를 가입 :은 가입 왼쪽에 기본 값으로 NULL을 교체하지만 ROLLUP
+------------+-------+---------+------+
| user_agent | value | recoqty | C |
+------------+-------+---------+------+
| NULL | NULL | topics | 1330 |
| abscdef | NULL | topics | 1330 |
| abscdef | NULL | topics | 1285 |
| abscdef | 1 | topics | 25 |
| abscdef | 0 | topics | 20 |
+------------+-------+---------+------+
이 같은 결과를 제공
Select * from
(
Select user_agent,
value,
recoqty,
count(recoqty) as C
from august_2016_search_stats SS
LEFT JOIN august_2016_extra E
on (SS.id = E.stats_id and E.key = 'personalized')
where time >= '2016-08-22 00:00:00' and
time <= '2016-08-22 23:59:59' and
query_type = 'myfeed' and
recoqty = 'topics'
group by recoqty,
user_agent,
value
with ROLLUP
having recoqty is not null
) D
order by C desc;
여기에서 값 (NULL 1285
)은 LEFT JOIN 때문입니다. 값 (NULL 1330
)은 롤업 때문입니다. 그러나 LEFT JOIN
에 대해서만 NULL
값을 바꾸고 ROLLUP
대신에 값을 바꿀 수있는 방법이 있습니까?
시도한 COALESCE이지만 결과에는 차이가 없습니다. –
위 쿼리를 실행하면 어떻게됩니까? –
모든 NULL 값이 NA로 대체되었습니다 –