count(**)와 count(1) 그리고 count(컬럼명) 차이

count(**)와 count(1) 그리고 count(컬럼명) 차이

SQL에서 count를 셀때 3가지 방법으로 나타낼 수 있다.

  1. count(*)
  2. count(1)
  3. count(컬럼명)

count(*) vs count(1)

사실 둘 사이에는 아무런 차이도 없다.
동일하게 동작하는 걸 알 수 있다.
다만 가독성을 위해 count(*) 사용하는 것을 좋다고 한다.




count(*) vs count(컬럼명)

  • COUNT(*)는 레코드 갯수 전체를 카운트
  • COUNT(column_name) 컬럼이 null이 아닌 경우 레코드 갯수를 카운트