강의 감사합니다! 이번 문제들은 좀 어렵네요 ㅠㅠ 51번 Select 행 Count * 를 하면 Null 도 포함 52번 어려움 53번 어려움 54번 재확인 필요 56번 Order by는 Select에서 언급이 없는 열이라도, 테이블에 있다면 문제없음 // order by랑 group by는 같은 열을 지칭해야함? 57번 order by 특징 58번 재확인 59번 select 문장 순서 (빈출문제!) 60번 어려움...
56번 1번 3번 보기... 1번은 FWGHSO 순서로 진행되니까 지역별 매출 테이블에서 / 지역이라는 컬럼 기준으로 그룹화하고 / 지역, 섬매출 두가지를 산출해야하는데 / 그 둘중 하나인 섬매출 기준으로 정렬하니까 말이 되는거고, 3번보기는 똑같이 지역별 매출 테이블에서 / 지역이라는 컬럼 기준으로 그룹화하고 / 지역, 섬매출 두가지를 산출해야하는데 / 그 둘다 아닌 쌩뚱맞은 년 이라는 기준으로 정렬하니까 오류가 나는 건가? 2번 보기는 지역별매출이라는 테이블에서 / 지역, 매출금액 두가지를 산출해야하는데 / 앞에 두보기처럼 그룹으로 묶인것도 아니고 책 해설처럼 오라클 특성상행 전체 칼럼을 메모리에 로드하니까 년이라는 컬럼 데이터 참고해서 지역,매출금액 산출하는건 가능하다는거고 .... 나의 작은 뇌로 이해한건 이건데 맞으면 좋겠다..
GROUP BY를 사용하면 그룹화된 결과를 얻기 위해 데이터를 그룹으로 분류하고 집계 함수를 계산합니다. GROUP BY 절에 명시한 컬럼들로 데이터를 그룹화하고, SELECT 절에 명시한 컬럼들과 집계 함수만 메모리에 로드하여 처리합니다. 따라서 GROUP BY를 사용하면 그룹화된 결과에 해당하는 컬럼들과 집계 함수의 계산 결과만을 메모리에 유지하고 나머지 컬럼들은 메모리에 로드하지 않습니다. 이는 메모리 사용을 최적화하고 데이터 처리 성능을 향상시키는데 도움을 줍니다.
이거 문제 오류 맞습니다. 아래 둘중 한가지로 나왔어야 맞습니다. 아래처럼 한 행에 집계된 데이터를 보여주든지, 아니면 나열하든지 했어야 했는데 1번은 집계값을 나머지 2,3은 조회된 데이터를 나열하는 등 섞였습니다. 정답은 1, 15, 6이어야 맞습니다. 윗분 말씀처럼 졸면서 출제한 문제이며 출제자 의도대로 쿼리를 수정하면 아래 둘 중 한 가지로 나와야됩니다. --데이터 ROW 조회 SELECT GRADE FROM EMP; SELECT GRADE FROM EMP WHERE GRADE IN('부장', '대리', '널'); SELECT GRADE, COUNT(*) FROM EMP GROUP BY GRADE; --데이터 count 결과값 조회 SELECT COUNT(GRADE) FROM EMP; SELECT COUNT(GRADE) FROM EMP WHERE GRADE IN('부장', '대리', '널'); SELECT COUNT(*) FROM ( SELECT GRADE, COUNT(*) FROM EMP GROUP BY GRADE);
@@opportunelydba56번의 2번 보기의 경우 해설집에서는 행기반 db인 oracle은 행 컬럼 전체를 로드해서 select에 가능하다고 하는데 이와 같은 논리로 3번도 group by 제거 시 가능해야 하는거 아닌가요? 물론 group by가 없어서 sum(매출금액)은 지역별이 아닌 전체가 되긴 하겠지만 오류는 발생하지 않을것 같은데 혹시 제가 개념을 잘못 이해한걸까요?
0:08 오늘은 여기서부터! 항상 강의 잘 듣고 있습니다 감사합니다!! 설명 최고예요ㅎㅎ
강의 감사합니다! 이번 문제들은 좀 어렵네요 ㅠㅠ
51번 Select 행 Count * 를 하면 Null 도 포함
52번 어려움
53번 어려움
54번 재확인 필요
56번 Order by는 Select에서 언급이 없는 열이라도, 테이블에 있다면 문제없음 // order by랑 group by는 같은 열을 지칭해야함?
57번 order by 특징
58번 재확인
59번 select 문장 순서 (빈출문제!)
60번 어려움...
감사합니다.!
56번 1번 3번 보기... 1번은 FWGHSO 순서로 진행되니까 지역별 매출 테이블에서 / 지역이라는 컬럼 기준으로 그룹화하고 / 지역, 섬매출 두가지를 산출해야하는데 / 그 둘중 하나인 섬매출 기준으로 정렬하니까 말이 되는거고, 3번보기는 똑같이 지역별 매출 테이블에서 / 지역이라는 컬럼 기준으로 그룹화하고 / 지역, 섬매출 두가지를 산출해야하는데 / 그 둘다 아닌 쌩뚱맞은 년 이라는 기준으로 정렬하니까 오류가 나는 건가?
2번 보기는 지역별매출이라는 테이블에서 / 지역, 매출금액 두가지를 산출해야하는데 / 앞에 두보기처럼 그룹으로 묶인것도 아니고 책 해설처럼 오라클 특성상행 전체 칼럼을 메모리에 로드하니까 년이라는 컬럼 데이터 참고해서 지역,매출금액 산출하는건 가능하다는거고 ....
나의 작은 뇌로 이해한건 이건데 맞으면 좋겠다..
5:21 그냥 오류가 없다고만 말씀하시고 왜 없는지는 설명을 안해주셨어요
덕분에 공부를 잘 하고 있어요😄
모든 문제를 다 설명을 하다 마시져 왜 ㅠ
56번에 3번이 잘 이해가 되지 않습니다. ORDER BY에서 오류가 난건지 GROUP BY 에서 오류가 난 것인지 잘 모르겠습니다. 다시 한번 설명해주실 수 있을까요?ㅠㅠ
GROUP BY를 사용하면 그룹화된 결과를 얻기 위해 데이터를 그룹으로 분류하고 집계 함수를 계산합니다. GROUP BY 절에 명시한 컬럼들로 데이터를 그룹화하고, SELECT 절에 명시한 컬럼들과 집계 함수만 메모리에 로드하여 처리합니다.
따라서 GROUP BY를 사용하면 그룹화된 결과에 해당하는 컬럼들과 집계 함수의 계산 결과만을 메모리에 유지하고 나머지 컬럼들은 메모리에 로드하지 않습니다. 이는 메모리 사용을 최적화하고 데이터 처리 성능을 향상시키는데 도움을 줍니다.
51번은 왜 값을 더하라는 명령이 없는데 행값을 다 더한게 정답인가요???
저도 이게 궁금해서 유튜브 찾아왔는데 설명이 없네요 ㅠㅠ 그냥 오타인걸까요? sql2) 지문의 GRADE가 아니라 COUNT(GRADE)가 나와야 하는게 맞으려나요?
@@김스-k1b 문제를 잘 읽으시면 결과 건수를 나열했다고 적혀있어요. SQL 결과가 아니라 SQL 결과로 나온 것들의 개수를 찾는 문제입니다.
@@이민재-f3g 아하 그렇네요 답변 감사합니다 😄
@@이민재-f3g 건수를 나열했다면 1번은 1이였어야죠. 문제 낼때 졸면서 냈나봅니다.
이거 문제 오류 맞습니다. 아래 둘중 한가지로 나왔어야 맞습니다.
아래처럼 한 행에 집계된 데이터를 보여주든지, 아니면 나열하든지 했어야 했는데
1번은 집계값을
나머지 2,3은 조회된 데이터를 나열하는 등 섞였습니다.
정답은 1, 15, 6이어야 맞습니다.
윗분 말씀처럼 졸면서 출제한 문제이며
출제자 의도대로 쿼리를 수정하면 아래 둘 중 한 가지로 나와야됩니다.
--데이터 ROW 조회
SELECT GRADE FROM EMP;
SELECT GRADE FROM EMP WHERE GRADE IN('부장', '대리', '널');
SELECT GRADE, COUNT(*) FROM EMP GROUP BY GRADE;
--데이터 count 결과값 조회
SELECT COUNT(GRADE) FROM EMP;
SELECT COUNT(GRADE) FROM EMP WHERE GRADE IN('부장', '대리', '널');
SELECT COUNT(*) FROM ( SELECT GRADE, COUNT(*) FROM EMP GROUP BY GRADE);
52. 1:58
53. 4:52
54번의 가의 최대값을 구하는 것은 안하는 건가요?
A003에서 가장 max값은 009로 차례로 풀어보시면 답 나와요!!!그래서 안하신듯
56번에 3번에서 group by절이 없으면 오류가 없는건가요?
GROUP BY 절이 없어도 오류가 생깁니다.
'지역' 컬럼이 GROUP BY 절이나, 집계함수에 존재하지 않으면 SELECT 리스트에서 쓸 수 없습니다.
SELECT 절에 그룹함수 이외의 컬럼 또는 수식은 GROUP BY 절에 기술하여야 합니다.
@@opportunelydba 네에 감사합니다 3번이 오류인건 이해했습니다.
노베이스라 모르는게 너무 많은데 보기 2번에 오더바이절에 년도 셀렉에 없는데
2번3번 차이를 모르겠습니다
저도… 이게 무슨말인지 잘 이해가 되지 않습니다 ㅠ ㅠ
@@opportunelydba56번의 2번 보기의 경우 해설집에서는 행기반 db인 oracle은 행 컬럼 전체를 로드해서 select에 가능하다고 하는데 이와 같은 논리로 3번도 group by 제거 시 가능해야 하는거 아닌가요? 물론 group by가 없어서 sum(매출금액)은 지역별이 아닌 전체가 되긴 하겠지만 오류는 발생하지 않을것 같은데 혹시 제가 개념을 잘못 이해한걸까요?
@@opportunelydba 제가 이해해봤는데 그룹 함수 자체로 이미 서메이션을 시켜준 것이니 연도별로 정렬 해주는것 자체가 오류라고 생각이 드는데 정확히 이해한 부분인지 궁금합니다..
저도 dba로 이직하게 됐는데 어떤 dbms 운영하시는지 여쭤봐도 될까요?
안녕하세요~ 이직 축하드려요^^
저는 씨퀄과 my를 각각 정,부로 맡고 있습니다!
@@opportunelydba 감사합니다 :) 전 원래 오라클 맡다가 dba로 이직하고 주가 mssql이 되었는데 적응이 안되네요 ㅜ sqld 말고도 또 다른 db 관련 영상 콘텐츠 생각해두신게 있으신가요??
아 저는 우선 마무리가되면, dba업무관련해서 올리지않을까 싶어요. 구체적인건 아직 고민중에 있습니다~
저도 오라클하다 넘어온건데, 디비가 원리는 비슷해도 쿼리부터 적응이 잘 안됐던 기억이 나네요..ㅎㅎ
@@opportunelydba 아 그렇군요 dba업무 관련해서도 영상 올라오면 아마 자주 보러 올거 같네요 ㅎㅎ일단 구독해놨습니다 좋은 하루 되세요 :)
감사합니다. 좋은하루 되세요:)
영상 화질이 왜케 구지져