세무민의 코딩일기 10

[세무민의 코딩일기] mysql에서 피벗 구현하기!

오늘 포스팅은 pivot에 관련된 내용을 다뤄볼 생각입니다. pivot을 이용하는 건 예전에 오라클에서 달력 만들었던 포스팅에서도 다뤘습니다. https://sg-moomin.tistory.com/entry/Oracle-DB%EB%A1%9C-%EB%8B%AC%EB%A0%A5-%EB%A7%8C%EB%93%A4%EA%B8%B0 Oracle DB로 달력 만들기! 오늘 과장님께서 주신 과제가 있어서 과제를 푸는데 과제 내용은 쿼리로 달력을 만드는것! 그래서 내가 구현한 방법은 총 3가지였다! #1 Case 문을 이용하는 방법! select min(case when WEEKDAY = 1 then DDAY sg-moomin.tistory.com 해당 포스팅은 위에 링크를 따라가면 확인할 수 있습니다. 오라클에서는 ..

DB/SQL 2021.08.02

[세무민의 코딩일기] 프로그래머스 짝지어 제거하기 문제 풀이

이번 포스팅에서 다룰 문제는 2017년도 팁스타운에서 제공 된 짝지어 제거하기 문제입니다. 이 문제를 풀면서 시간복잡도와 deque의 사용의 장점을 알 수 있었습니다. 1. 문제설명 2. 입출력 예 설명 3. 문제 풀이 이번 문제는 처음에 구상했던 방법은 같은 값이 나오는 i, i+1값을 제거해주면 됩니다. 이 때 방법의 차이로 시간복잡도 문제에 봉착할 수 있습니다. 제가 처음 생각했던 것은 s = s[:count]+s[count+2:]와 같이 같은 문자가 연속으로 존재한다면 해당 값을 제거하고 다시 새로운 문자열로 만들어줬습니다. 이 방법을 이용했더니 시간복잡도에 초과가 되었고 곰곰히 생각한 끝에 deque를 생각했습니다. 말 그대로 deque과 반복문을 이용해서 연속으로 들어있는 값이 있다면 dequ..

[세무민의 코딩일기] 숫자 문자열과 영단어 문제 풀이

오늘 포스팅은 프로그래머스에 있는 "숫자 문자열과 영단어" 문제를 풀어보겠습니다. 해당 문제는 2021년도 카카오 채용연계형 인턴십에서 진행된 문제입니다. 1. 문제 설명 2. 제한사항 및 입출력 예제 3. 문제 풀이 이 문제를 보자마자 생각난건 "replace" 딱 하나였습니다. 말 그대로 숫자가 아닌경우 치환해주면 되는데 파이썬에서 문자열 치환을 해줄 수 있는건 replace입니다. 사실 2차원 배열과 반복문을 통해서 해당 숫자가 아니고 영단어 키워드가 존재한다면 체크해주는 등 이런 방법으로도 가능할 수 있지만 그냥 생각난 replace로 풀었습니다. 생각보다 엄청 쉽게 풀었는데 이게 되서 깜짝놀랬네요..ㄷㄷ def solution(s): s = s.replace('zero','0').replace(..

[세무민의 코딩일기] SQL 내장함수에 대해서 알아보자 2탄!(문자열 공백 제거와 문자열 쪼개기)

요새 회사 업무에 시달리는 중이라 생각보다 포스팅을 꾸준히 하는 게 쉽지 않은 거 같습니다. 그래도 아는 선에서 최대한 좋은 정보로 포스팅해보겠습니다! 이번 포스팅에서는 저번 포스팅에서 다루지 못했던 함수에 대해서 마저 다루도록 하겠습니다. 1. LTRIM, RTRIM SELECT LTRIM(' SG-MOOMINS') AS LTRIM ,RTRIM('SG-MOOMIN ') AS RTRIM FROM DUAL; - LTRIM은 문자열 왼쪽에 공백, RTRIM은 문자열 오른쪽에 공백을 제거합니다. - 공백의 경우는 중간 공백은 제거되지 않는다는 점 2. TRIM SELECT TRIM(' SG - MOOMIN ') AS 'TRIM' ,TRIM(LEADING 'A' FROM ' A SG-MOOMIN F A') AS..

DB/SQL 2021.07.28

[세무민의 코딩일기] SQL 내장함수에 대해서 알아보자 1탄!(길이, 진법변환, 문자열 반환 등)

오늘 다뤄볼 포스팅은 SQL 내장함수에 대해서 다뤄볼 것입니다. 내장함수가 워낙 많아서 나눠서 포스팅 할 예정입니다. 1. 아스키 코드 함수[ASCII] SELECT ASCII('AB') AS 'AB' , (ASCII('A') + ASCII('B')) AS 'A + B'; 아스키 코드는 위와 같이 사용할 수 있습니다. 위의 코드를 돌리면 위의 그림과 같이 나오며 'AB'과 같이 문자열의 경우에는 아스키 코드 함수가 가장 앞에 있는 A를 변환해줍니다, 2. BIT_LENGTH, LENGTH, CHAR_LENGTH SELECT BIT_LENGTH('SG-MOOMOIN') AS '비트 길이' , CHAR_LENGTH('SG-MOOMIN') AS '문자 길이' , LENGTH('SG-MOOMIN') AS '길이..

DB/SQL 2021.07.27