책 내용 질문하기
2과목 데이터베이스 문제 질문
도서
2017 시나공 정보처리기사 실기(산업기사 포함) 특별개정판
페이지
126
조회수
115
작성일
2017-06-11
작성자
탈퇴*원
첨부파일

2과목 DB 126페이지 문제16번 답이

SELECT 상호, 총액

FROM 거래내역

WHERE 총액 In(

SELECT MAX(총액)

FROM 거래내역);

인데

SELECT 상호, MAX(총액) AS 총액

FROM 거래내역

GRUOP BY 상호;

이렇게 쓰면 안되나요?

안된다면 저 하위질의에 있는 구문은 똑같이 오류아닌가요?

이때까지 그냥 문제를 보니까 SQL SELECT에서

SELECT 속성은 관계대수의 PROJECT(열)

FROM은 말그대로 테이블

WHERE은 관계대수에서 SELECT(행)같은 느낌으로

그래서 딱 열과 행을 조립해서 원하는 부분을 2차원 배열로 출력해주는 줄 알았는데

제가 이해한게 맞나요?

추가로 왜 SQL문은 전부 대문자인지... 시험에도 대문자로 꼭 써야하나요?

답변
2017-06-12 09:26:15

안녕하세요.

1)

SELECT 상호, MAX(총액) AS 총액

FROM 거래내역

GRUOP BY 상호;

위와 같이 작성해도 동일한 결과가 산출됩니다.

하위 질의를 이용해 구현하라는 조건이 없다면 어느 것으로 작성하든 결과가 동일하게 산출되므로 모두 맞습니다.

2)

SQL의 DML을 관계대수와 대응해서 생각하시면 속성을 표시하는 것은 Project, 조건 적용은 Select로 이해하신 내용이 맞습니다.

3)

대소문자 구분을 하지 않습니다. 또한 1회 출제된 문제를 기준으로 보면 SQL 구문 끝의 세미콜론(;)이나 문자열 묶을 때 사용하는 따옴표의 기준을 제시하고 있습니다. 그러므로 문제에 제시된 작성 방법에 따라 작성하면 됩니다. 혹 문제에 대문자로 작성하라는 조건이 있으면 그렇게 하지만 별다른 조건이 없으면 구분하지 않아도 됩니다.

오늘도 즐거운 하루 되세요.

  • *
    2017-06-12 09:26:15

    안녕하세요.

    1)

    SELECT 상호, MAX(총액) AS 총액

    FROM 거래내역

    GRUOP BY 상호;

    위와 같이 작성해도 동일한 결과가 산출됩니다.

    하위 질의를 이용해 구현하라는 조건이 없다면 어느 것으로 작성하든 결과가 동일하게 산출되므로 모두 맞습니다.

    2)

    SQL의 DML을 관계대수와 대응해서 생각하시면 속성을 표시하는 것은 Project, 조건 적용은 Select로 이해하신 내용이 맞습니다.

    3)

    대소문자 구분을 하지 않습니다. 또한 1회 출제된 문제를 기준으로 보면 SQL 구문 끝의 세미콜론(;)이나 문자열 묶을 때 사용하는 따옴표의 기준을 제시하고 있습니다. 그러므로 문제에 제시된 작성 방법에 따라 작성하면 됩니다. 혹 문제에 대문자로 작성하라는 조건이 있으면 그렇게 하지만 별다른 조건이 없으면 구분하지 않아도 됩니다.

    오늘도 즐거운 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.