전체 글(204)
-
[사전캠프] TIL 작성 - 24.08.18(일)
1. 학습 오늘은 알고리즘 및 SQL 코드카타를 풀고서 SQL 강의를 마저 수강했다. 수강 내용은 'SubQuery' 에 대한 내용이었는데 개인적으로는 이전에 배운 내용에 비해 크게 흥미롭지 않았다. 그렇다고 대충한 것은 아니지만, '내가 과연 순수하게 SQL만을 다룰일이 있을까?' 라는 생각을 하면서 해당 작성법에 대한 생각을 좀 더 하게 되었다. 나의 경우 아마 DB 에 한 번의 쿼리로 원하는 데이터를 가져와 비즈니스 로직을 통해 데이터를 가공하는 과정을 많이 겪을 텐데 저렇게 Java 깊어지는 조건/반복문의 골마냥 중간에 사용하는 'SubQuery' 는 참 매력적이지 못하다는 생각을 했다. 2. 과제 4주차(화) 개인과제와 코드카타를 진행하였다. SQL 코드카타를 진행하면서 SQL 에서 날짜 및 ..
2024.08.18 -
[사전캠프] 날짜별 획득 포인트 조회하기
※ 참고 : 기존 문제가 문맥이 좀 맞지 않는다... 그래서 과제 제목에 맞추어 개인적으로 약간 손 보았다.문제 : 이용자들이 사용하는 포인트를 따라가면 얼마나 활동적인지 파악할 수 있다. 포인트가 많을 수록 활동이 많다는 의미가 되니 날짜별로 이용자의 평균 포인트를 확인해보자.조건 : 날짜별 이용자의 평균 포인트가 높은 순으로 정렬해 언제 가장 활동적이었는지 확인SELECT DATE(created_at) created_at, ROUND(AVG(point), 0) average_pointsFROM point_usersGROUP BY 1ORDER BY 2 DESC 기존 'create_id' 는 'datetime' 타입이었다. 해당 컬럼에서 'DATE' 를 사용해 날짜 정보를 가져왔고, 'ROUND' 를 통..
2024.08.18 -
[SQL] 날짜/시간 데이터 다루기 - YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, NOW, CURRENT_DATE, CURRENT_TIME
SQL 에서는 날짜 데이터를 어떻게 다룰까? 지금까지 학습을 하면서, 분명 보이는 것은 문자열 보이지만 실제로 'datetime' 타입인 경우를 많이 접할 수 있었다. 자연스레 'datetime' 에서 '원하는 값만 뽑아 쓸 수 없을까?' 라는 생각이 들었고 해당 내용을 따로 찾아 이렇게 정리하게 되었다. 날짜 및 시간 데이터를 다루는 함수들은 많지만 가장 기본적인 함수들에 대해서 다루었다. 0. 데이터 타입(자료형) 날짜 및 시간을 표현하는 데이터 타입에는 여러가지가 있지만 그 중 가장 기본적이고 보편적으로 사용하는 타입들에 대해 이야기 해보자.DATE : 날짜 정보를 갖는 타입이다. 'YYYY-MM-DD' 형식을 사용한다.TIME : 시간 정보를 갖는 타입이다. 'HH:MM:SS' 형식을 사용한다.D..
2024.08.18 -
[SQL] Query 안의 Query - SubQuery
지금까지는 SELETE 절이나 WHERE 절을 사용해 필요한 데이터만을 추리거나 필요에 따라 데이터를 가공하는 과정을 거치도록 쿼리를 작성했다. 이는 당장 작성에는 괜찮을지 몰라도 추후에 다시 보거나 다른 이가 봤을 땐 한 번에 이해하기 어렵다는 문제를 갖는다. 그래서 SQL 에는 좀 더 보기 편한 쿼리를 작성할 수 있게 'SubQuery' 라는 것이 있다. 개인적으로 학습하고 느낀점은 SQL 만을 사용해서 데이터에 접근하지 않을 나로써는 딱히 마음에 드는 방식은 아니었다. 아무튼 'SubQuery' 에 대해 알아보자. 1. 기본 문법SELECT 컬럼명3, 컬럼명4 // A QueryFROM(SELECT 컬럼명1, 컬럼명2 // B QueryFROM 테이블명) AS 별명 기본 구조를 통해 파악해보면 'A..
2024.08.18 -
[사전캠프] TIL 작성 - 24.08.17(토)
1. 학습 오늘은 사전캠프에 늦게 참여해 밀린 개인과제를 통한 학습과 이전에 강의에서 배운 SQL 을 토대로 SQL 코드카타를 진행했다(물론 알고리즘 코드카타도 진행했다). 어제 진행되었지만 미처 마저 정리하지 못한 팀 스터디에서 다룬 아티클에 대한 정리도 같이 진행하였다. 2. 과제 'Java, Spring 톺아보기' 를 통해서 자바에대해서 다시 한 번 알아보고 더불어 Spring 과 Kotlin 에 대해 알아보았다. 더욱이 Kotlin 의 경우 평소 따로 생각이 없었으니 알아보니 충분히 배울만한 언어라는 생각을 가지게 되었다. '데이터 속 김서방 찾기' 의 경우 자세한 설명이 없어서 임의로 문제를 만들어 SQL 을 작성해 문제를 해결해 보았다. SQL 코트카타와 더불어 진행하다보니 현재까지 배운 ..
2024.08.17 -
[사전캠프] 네트워크 쉽게 이해하기
※ 참고 : 특정 용어의 개념을 정리하고 이해한 게시글이 아니다. '네트워크' 를 예시를 통해 쉽게 이해해 전반적인 이해를 도와주는 것이 목적인 게시글이다. 1. 네트워크에 대해 알아야 하는 이유 '네트워크' 뿐만 아니라 개발에 있어서 어떠한 '흐름' 을 머릿속으로 그리고 파악할 수 있는 능력을 기르는 것은 필수적인 것 같다. 단순하게 "그냥 코드작성해서 잘 작동하면 문제없지 않나?" 라고 생각할 수도 있겠지만, 누구나 개발을 하면서 한 번 쯤은 이해하지 못하는 문제에 직면한다고 하는데, 이때 검색이나 주변의 도움으로 문제를 해결하는 것도 한 방법이겠지만 개발한 결과물이 작동하는 흐름을 잘 알고 있어 어떤 부분에서 문제 원인이 발생하는지 예상하고 파악할 수 있다면 이는 전자와 능력의 질이 달라지는 결과를..
2024.08.17