본문 바로가기
MySQL

[MySQL] null인 데이터를 가져오기, 바꾸기 is null, ifnull

by coding_su 2022. 12. 7.

📝MySQL Workbench null 데이터를 가져오기

null인 데이터를 가져오는 is null
null이 아닌 데이터 가져오는 not 
null인 데이터를 변경하는 ifnull

 

null인 데이터를 가져오는 is null

-- null인 데이터를 가져오는 방법 is null
-- comments 테이블에서 updated_at 컬럼이 null인 데이터 가져오기
select *
from comments
where updated_at is null;

 

null이 아닌 데이터 가져오는 not 

-- comments 테이블에서 updated_at 컬럼이 null이 아닌 데이터 가져오기
select *
from comments
where updated_at is not null;

null인 데이터를 변경하는 ifnull

-- null을 다른 값으로 대체하는 방법 ifnull(컬럼, 바꿀내용)
select first_name, ifnull(title, 'MISSING'), ifnull(grade, 0)
from students s
left join papers p
on s.id = p.student_id;

select first_name, ifnull(avg(p.grade), 0) as average
from students s
left join papers p
on s.id = p.student_id
group by s.id
order by average desc;

select first_name, ifnull(avg(grade), 0) as average,
	case
		when ifnull(avg(grade), 0) >= 75 then 'PASSING'
        else 'FAILING'
    end as 'passing_status'
from students s
left join papers p
on s.id = p.student_id
group by s.id
order by average desc;

select first_name, last_name,
count(r.id)as COUNT,
ifnull(min(rating),0) as MIN,
ifnull(max(rating),0) as MAX,
ifnull(avg(rating),0) as AVG,
if(count(r.id) = 0, 'INACTIVE', 'ACTIVE') as STATUS
from reviewers rv
left join reviews r
on rv.id = r.reviewer_id
group by first_name;

댓글