본문 바로가기
  • 오늘도 한걸음. 수고많았어요.^^
  • 조금씩 꾸준히 오래 가자.ㅎ

IT기술/DB16

[sql] group by, partition by 사용방법, 그룹화/ 묶어서 표현하기 PARTITION BY 와 GROUP BY PARTITION BY와 GROUP BY절은 복잡한 분석을 할 때 꽤나 자주 쓰게 될 SQL 문법입니다. 데이터를 단순히 반환하는 것만으로도 유용할 때가 있겠지만, 우리가 마주하는 상황은 종종 더 복잡한 계산을 하는 상황이기 때문입니다. 한 단계 발전된 분석을 위해 우리는 GROUP BY와 PARTITION BY를 사용합니다. 이 둘은 데이터를 "그룹화"한다는 점에서 유사하지만, 둘 사이에는 아주 큰 차이점이 존재합니다. GROUP BY GROUP BY 절은 특정 기준으로 데이터를 정의하고자 할 때 사용합니다. 보통 이런 기준은 우리가 분석을 할 때 분류 기준으로 삼는 것들입니다. 예를 들자면, 임직원의 정보를 그들의 '연봉 인상률'을 기준으로 그룹화할 수 있고.. 2023. 7. 14.
[sql] DB 설계, 어떻게 하는걸까? DB를 설계한다라... 테이블 만들고 테이블 만들고... 인덱스 잡고... 사실 잘 모르겠다. db에 대해선 전문적으로 공부한 적이 없는 것 같다. 실제로 설계는 해본적이 있으나, 기초적인 지식들 뿐이다보니 방법론이나, 뷰의 활용, 인덱스의 활용 설계시 생각해야 하는 원칙 같은건 알 방법이 없었다. 가르쳐 줄 사람이 없을 뿐만 아니라, 개발할 일이 더 많았기 때문이다. 결국 닥치는데로 해야했으며, 그렇게 경험을 쌓아보니 db설계가 왜 어려운지 실감하게 되었다. 사실 이게 돈이 되는 기술이라 누구한테 배우기도 어렵다. 적어도 내가 생각하기에 공유할 수 있는 부분들을 포스팅 해보려 한다. - 설계를 하면서 성능적인 면을 고려하는게 좋다. DB의 역할로써 데이터를 저장하는 기능을 가진다. 이는 비용이 드는 일.. 2023. 7. 14.
[sql] NULL 널? 개념, NULL 중요도와 연산, 선택, NULL관련 함수 종류, NULL 정렬 (널 사랑하겠어) DB에서 null은 무엇일까? null로 저장 되는게 무슨 의미를 가질까? null(NULL)은 아직 정의되지 않은 값 입니다. NULL은 0이 아니며, 공백도 아닙니다. 그저 NULL이라는 것으로 표현되며 정의 되지 않은 것으로 여겨집니다. NULL은 unknown 또는 N/A(not applicable)이라 쓰기이도 합니다. *** 오라클의 경우에는 사용자가 ' '(공백) 만 VARCHAR2 데이터 타입에 INSERT를 하면 내부에서 자동적으로 NULL로 바꿔서 저장해줍니다. (오라클은 공백 문자열이 저장되는 걸을 허용하지 않음 그냥 NULL로 처리) 그렇다고해서 공백 = null 이라고 하는건 틀린 겁니다. (원래 공백과 null은 다른 개념입니다.) 보통 테이블을 생성할 때 기본키는 NULL일 수.. 2023. 7. 13.
mysql datetime 유형 선택하기 mysql 에서 사용하는 날짜, 시간 형식은 특정 포멧을 이용하여 원하는데로 출력 가능하다. 기본적으로 CURRENT_TIMESTAMP 를 이용하여 시간 출력 가능하다. 기본 데이터 포멧은 yyyy-mm-dd hh:mm:ss 형식으로 확인된다. 데이터 포멧 사용은 다음 양식으로 하면된다. DATE_FORMAT(CURRENT_TIMESTAMP, '%y-%m-%d') %M Month 월(Janeary, February ...) %H Hour 시(00, 01, 24) 24시간 형태 %m Month 월(01, 02, 03 ...) %h %h Hour 시(01, 02, 12) 12시간 형태 %W Day of Week 요일(Sunday, Monday ...) %I(대문자 아이) Hour 시(01, 02 12) 12.. 2021. 9. 3.