코리니이
2019-02-17 07:27:29
5
956

신입개발자입니다. sql학습 관련하여 질문드리겠습니다.


안녕하세요 신입개발자인데요.. 주로 이제까지 공부했던 부분들은 스프링 ajax jquery 였습니다.

쿼리는 기본적으로 DML을 공부했고 부가적인 기능들은 거의 모르다시피 하는데.. 혹시 어떻게 공부하는게 가장 효과적일까요..

아직 신입개발자로써 멀지만 기초를 탄탄히 해서 나중엔 꼭 멋진 개발자가 되고 싶습니다. 선배님들의 많은 조언 부탁드려요~

0
0
  • 댓글 5

  • 스텁
    1k
    2019-02-17 08:05:21 작성 2019-02-17 09:00:00 수정됨

    sql 스크립트는 여러 example 풀면서 체득하는것도 좋은 방법입니다.

    회사에서 DB갖고 이것저것 하기엔 좀 부담이 될수도 있으면 이런것도 좋을듯하네요

    https://www.hackerrank.com/domains/sql

    개발자에게 SQL은 DML이 99%죠. 다만 여러 테이블  조인하기 시작하고 통계내던가 피봇 하던가

    이러면 내가 DML 을 아는게 아니였구나 하실거에요 ㅎ

    2
  • 초무쿤
    2k
    2019-02-17 13:31:31

    Sqlfiddle이 있습니다.

    1
  • 콘푸로스트
    717
    2019-02-17 15:46:50

    함수를 먼저 쭉 훑어보세요.

    to_number, to_char, rank() over(), row_number() over()등등

    1
  • 폴란트
    125
    2019-02-17 22:00:50 작성 2019-02-17 23:00:13 수정됨

    정보처리기사 교재나 다른 교재 등을 통해 데이터베이스 파트를 공부하시거나 기존 프로젝트에서 사용되는 쿼리 소스코드나 다른 예제 쿼리들을 보는 등 경험을 쌓고, 어느 정도 경험이 생기면 그 이후 sqld 자격증 공부를 하면 sql실력이 많이 오르실 것 같습니다. ocp자격증 따라는 사람도 있지만, 그 자격증은 교육도 받아야 하고 취득 관련 비용만 거의 100만원 정도 되기 때문에 제 관점에서는 그렇게 추천하지 않습니다. 참고로 sqld자격증 응시비용은 5만원 정도 합니다.

    또 막상 db를 다루면 오라클 외에도 mssql, mysql, db2 등의 각각 미묘하게 다른 특성을 가진 db를 다루는 경우가 생기기 때문에 ocp자격증을 포함한 오라클 올인은 조금 망설여지는 부분이 있습니다.

    ( 예를 들면 오라클에서는 rownum으로 처리하는 부분을 mssql에서는 top(3)으로 일부 출력한다든지 오라클의 decode함수가 다른 db에서 사용불가라든지, 오라클에서는 기본적으로 지원하는 계층형 출력 함수가 다른 db에서는 테이블 함수나 with cte를 이용한 재귀형 출력으로 구현해야 하는 등 여러 가지 다른 게 있습니다. 오라클에서는 select할 때 아무 것도 안 붙여도 되지만 다른 db에서는 공유락을 방지하기 위해 with ur(db2)이라든지 with nolock(mssql)를 붙이는 경우가 생긴다든지 그렇습니다. 상황에 따라서는 배타락까지 방지한다고 begin tran, commit tran, rollback tran를 붙이는 경우도 있습니다. )

    1
  • 코리니이
    2019-02-18 11:44:48

    답변주신 모든 분들께 정말 감사합니다. 신입이고 처음으로 경험하는 세계??! 라서 아직 모르는 것도 많지만 꾸준히 노력해서 오늘 보다 더 나은 내일을 만들고 싶은 바람입니다. 다들 좋은 한 주 되시길 응원하겠습니다 감사합니다!

    0
  • 로그인을 하시면 댓글을 등록할 수 있습니다.