대출 테이블을 대상으로 GROUP BY 절 없이 실행할 때 오류가 발생… | [SQLD] SQL 개발자 기출유형 모의고사 5회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 5회
대출 테이블을 대상으로 GROUP BY 절 없이 실행할 때 오류가 발생하는 SQL은?
1
SELECT '합계' AS 구분, SUM(연체료) FROM 대출;
2
SELECT 회원번호, COUNT(*) AS 건수 FROM 대출;
3
SELECT MAX(대출일) - MIN(대출일) FROM 대출;
4
SELECT COUNT(*), MAX(대출일) AS 최근 FROM 대출;
해설

GROUP BY 가 없으면 테이블 전체가 하나의 그룹이 되어 결과가 1행이므로, 행마다 값이 다른 회원번호를 집계 없이 함께 SELECT 하면 오류가 난다.

SELECT 절에는 집계 함수, 상수, 집계 함수끼리의 연산만 둘 수 있다.

  • 집계 함수만 나열한 SQL 은 전체 1행으로 정상 실행된다.
  • 문자 상수는 그룹마다 같은 값이라 집계와 함께 써도 된다.
  • MAX 와 MIN 의 차처럼 집계 결과끼리의 연산은 허용된다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[SQLD] SQL 개발자 기출유형 모의고사 5회 50문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요SQLD SQL 개발자 실전 모의고사 암기장 전체 보기