728x90
반응형

전체 글 180

[Programmers]동명 동물 수 찾기(GROUP BY, HAVING)

동명 동물 수 찾기 https://school.programmers.co.kr/learn/courses/30/lessons/59041 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Q : 동물 보호소에 들어온 동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성해주세요. 이때 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회해주세요. SELECT NAME, COUNT(*) FROM ANIMAL_INS WHERE NAME IS NOT NULL GROUP BY NAME HAVING COUNT(NAME)..

[Programmers]고양이와 개는 몇 마리 있을까(GROUP BY, PARTITION BY)

고양이와 개는 몇 마리 있을까 https://school.programmers.co.kr/learn/courses/30/lessons/59040 Q : 동물 보호소에 들어온 동물 중 고양이와 개가 각각 몇 마리인지 조회하는 SQL문을 작성해주세요. 이때 고양이를 개보다 먼저 조회해주세요. 1. GROUP BY 사용 SELECT ANIMAL_TYPE, COUNT(*) FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE 2. PARTITION BY 사용 SELECT DISTINCT(ANIMAL_TYPE), COUNT(*) OVER (PARTITION BY ANIMAL_TYPE) FROM ANIMAL_INS ORDER BY ANIMAL_TYPE 두 개의 차이..

[Programmers]자동차 대여 기록에서 장기/단기 대여 구분하기(CASE WHEN, DATEDIFF)

자동차 대여 기록에서 장기/단기 대여 구분하기 https://school.programmers.co.kr/learn/courses/30/lessons/151138 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Q : CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블에서 대여 시작일이 2022년 9월에 속하는 대여 기록에 대해서 대여 기간이 30일 이상이면 '장기 대여' 그렇지 않으면 '단기 대여' 로 표시하는 컬럼(컬럼명: RENT_TYPE)을 추가하여 대여기록을 출력하는 SQL문을 작성해주세요. 결과는 대여 기록 ID를 기준으로 내림차..

[MySQL] 소수점 관리(ROUND, TRUNCATE, FORMAT)

0) 기본 SELECT AVG(DAILY_FEE) FROM CAR_RENTAL_COMPANY_CAR WHERE CAR_TYPE LIKE 'SUV' >> 93727.2727 1) ROUND(숫자, 소수점 개수) - 소수점 반올림 소수점 자리를 0개로 설정했을 때 (=소수 첫 번째 자리에서 반올림 했을 때 (0으로 설정 또는 생략가능)) SELECT ROUND(AVG(DAILY_FEE)) FROM CAR_RENTAL_COMPANY_CAR WHERE CAR_TYPE LIKE 'SUV' >> 93727 소수점 자리를 1개로 설정했을 때 (=소수 두 번째 자리에서 반올림 했을 때) SELECT ROUND(AVG(DAILY_FEE), 1) FROM CAR_RENTAL_COMPANY_CAR WHERE CAR_TYPE..

SQL 쿼리 실행 순서

Order of execution of a Query Complete SELECT query SELECT DISTINCT column, AGG_FUNC(column_or_expression), … FROM mytable JOIN another_table ON mytable.column = another_table.column WHERE constraint_expression GROUP BY column HAVING constraint_expression ORDER BY column ASC/DESC LIMIT count OFFSET COUNT; FROM and JOINs 테이블 병합 🔻 WHERE 행 필터 🔻 GROUP BY 그룹 🔻 HAVING 그룹 행 필터 🔻 SELECT 열 선택 🔻 DISTINCT ..

카테고리 없음 2023.11.01

[MySQL] 날짜 관련 함수

MySQL에서 날짜 변환은 오라클(TO_CHAR, TO_DATE)과는 다르게 DATE_FORMAT, STR_TO_DATE를 사용한다. 1. 날짜 형식 변환 함수 (1) DATE_FORMAT 날짜 데이터를 다른 날짜 형식으로 변환 SELECT DATE_FORMAT('2019-03-01 12:23:01', '%Y-%m-%d') >> 2019-03-11 SELECT DATE_FORMAT('2019-03-01 12:23:01', '%Y-%M-%D') >> 2019-March-11th (2) STR_TO_DATE 문자열에서 날짜 형식으로 변환 SELECT STR_TO_DATE('20201103', '%Y-%m-%d') >> 2020-11-03 2. 날짜 연산 함수 (1) DATEDIFF(날짜1, 날짜2) 두 날짜..

[Programmers] 나이 정보가 없는 회원 수 구하기 (COUNT, SUM)

https://school.programmers.co.kr/learn/courses/30/lessons/131528 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Q : USER_INFO 테이블에서 나이 정보가 없는 회원이 몇 명인지 출력하는 SQL문을 작성해주세요. 이때 컬럼명은 USERS로 지정해주세요. (1) COUNT, WHERE IS NULL 조건 사용 SELECT COUNT(*) as USERS FROM USER_INFO WHERE AGE IS NULL; (2) SUM(AGE IS NULL) 사용 SELECT SUM(AGE IS NULL) as..

[Programmers] 경기도에 위치한 식품창고 목록 출력하기 (IFNULL, CASE WHEN, LIKE, %)

https://school.programmers.co.kr/learn/courses/30/lessons/131114 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Q : FOOD_WAREHOUSE 테이블에서 경기도에 위치한 창고의 ID, 이름, 주소, 냉동시설 여부를 조회하는 SQL문을 작성해주세요. 이때 냉동시설 여부가 NULL인 경우, 'N'으로 출력시켜 주시고 결과는 창고 ID를 기준으로 오름차순 정렬해주세요. SELECT WAREHOUSE_ID, WAREHOUSE_NAME, ADDRESS, IFNULL(FREEZER_YN,"N") FROM FOOD..

카테고리 없음 2023.10.28

[Programmers] 여러 기준으로 정렬하기 (ORDER BY 여러개)

https://school.programmers.co.kr/learn/courses/30/lessons/59404 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ORDER BY 를 사용해 여러개의 기준으로 정렬하는 법 Q : 동물 보호소에 들어온 모든 동물의 아이디와 이름, 보호 시작일을 이름 순으로 조회하는 SQL문을 작성해주세요. 단, 이름이 같은 동물 중에서는 보호를 나중에 시작한 동물을 먼저 보여줘야 합니다. SELECT ANIMAL_ID, NAME, DATETIME FROM ANIMAL_INS ORDER BY NAME, DATETIME DESC;..

Git 상황별 코드 정리

1. 처음 레파지토리 생성 후 git 원격 저장소에 코드 파일 넣을 때 New Repogitory 생성 git init git add . git commit -m "first commit" git branch -M main git remote add origin git push -u origin main 2. 원격 저장소에 있는 파일을 로컬로 가져오고 싶을 때 ## 처음 가져올 때 git clone ## 이미 가져왔는데 새로 추가된 내용들 가져오고 싶을 때 git pull 3. git clone 한 곳에서 개발을 진행하고 새 브랜치를 추가하여 나만의 개발 저장소 만들기 git branch (브랜치 생성 ex.hello) git checkout (브랜치로 이동) git branch (브랜치 목록 확인, *..

IT/Git 2023.10.26

AWS Cloud9에서 Amplify Serverless App 실습 (Cognito 로그인 화면 구현)

AWS Amplify Serverless Application 워크샵 실습해보기 (조금씩 수정) - Cognito 회원가입/로그인 화면 구현 https://master.d3f5073vvso9t3.amplifyapp.com/lab1/contents/bootstrapping/ 어플리케이션 부트스트래핑 :: Amplify Serverless Application 워크샵 어플리케이션 부트스트래핑 React 어플리케이션 만들기 create-react-app CLI로 새로운 리액트 웹 어플리케이션을 만듭니다. 이는 로컬에서 자동으로 다시 서버를 띄워주는 리액트 샘플 어플리케이션 master.d3f5073vvso9t3.amplifyapp.com 1. app 생성 npx create-react-app cd npm st..

IT/클라우드 2023.10.26

클라우드 기본 지식

1. 기본 지식 aws는 클라우드 이다. 그럼 클라우드란? 언제, 어디서든 인터넷을 통해 접속이 가능한 환경. → 온프레미스(자사가 서버 등을 구축하는 것), 오프프레미스(임대, 공공장소 구축된거 사용) 공용 클라우드와 사설 클라우드 공용 클라우드 : aws처럼 이대하는 클라우드 사설 클라우드 : 큰 개발 회사들처럼 임대하지 않고 사설 클라우드를 운영하는 것 ‘온프레미스에서 클라우드로’ 전환 자사운영 → 임대로 변환 비클라우드 → 클라우드로 변환 2. 클라우드 주요 기술 (가상화, 분산처리) 클라의드의 ‘언제든지 맘대로 서버나 인프라를 구축할 수 있다’는 특징은 가상화와 분산처리에 의해 지탱된다. 가상화 컴퓨터는 메모리, 하드디스크, os 등 다양한 물리적 부품이 필요함. 이를 소프트웨어로 대체하는 것이..

IT/클라우드 2023.10.26

AWS 클라우드 서비스

1. 목적에 따라 다양한 서비스를 제공 웹 서버를 구축하고 싶을 때 서버(EC2) 서버 OS(AMI) IP주소(Elastic IP) 스토리지(S3) 도메인(Route 53) DB 서버(RDS) 머신러닝 개발하고 싶을 때 머신러닝 모델 (Machine Learning, SageMaker) 이미지 동영상 인식(Rekonition) 음성 인식(Transcribe, Lex) 모바일 시스템을 구축하고 싶을 때 애플리케이션 서버(EC2) DB 서버(RDS) 통지 시스템(SNS) 스토리지(S3) IP 주소(Elastic IP) 인증 서버(Cognito) 2. AWS 서비스 (165개 이상 있음) Amazon EC2 (Elastic Compute Cloud) 컴퓨터 용량을 제공하는 서비스 서버, os 소프트웨어 등을 ..

IT/클라우드 2023.10.26

실무에 많이 쓰는 파이썬 코드 모음

1. merge 특정 기준열로 표 합치기 import pandas as pd # 기준열 이름이 같을 때 pd.merge(left_df, right_df, on = '기준열', how = '조인방식') # 기준열 이름이 다를 때 pd.merge(left_df, right_df, left_on = '왼쪽 열', right_on = '오른쪽 열', how = '조인방식') 2. grouby # 기본 - 인덱스 1개 a = df.groupby('열이름1')['열이름2'].count() # 기본 - 인덱스 2개 a = df.groupby(['열이름1','열이름2'])['열이름3'].sum() # '열이름2'의 값을 column으로 지정 b = df.groupby(['열이름1','열이름2'])['열이름3'].cou..

pyinstaller에서 webdriver_manager 사용하기. 오류 해결.

1. cmd에 webdriver_manger 설치 pip install webdriver_manager 2. 크롬 옵션 지정 from selenium import webdriver from selenium.webdriver.chrome.service import Service from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.by import By from selenium.webdriver.chrome.options import Options chrome_options = webdriver.ChromeOptions..

Dataframe 엑셀로 내보낼 때 폰트 굵기 변경

Dataframe에서 to_excel(엑셀 내보내기) 시, 인덱스 부분의 폰트 굵기(bold)를 제거 하고싶은 경우 # 엑셀에서 굵기 제거 def df_style(x): return 'font-weight: normal' df.style.applymap(df_style) # 셀 전체 # df.style.applymap(df_style, df.index) #인덱스 굵기 없애기 특정 셀을 굵게 하고 싶은 경우 def df_style(x): return 'font-weight: bold' file_1.style.applymap(df_style, df.loc[2]) #특정 위치만

DataFrame에서 날짜 변환 시 한글(월일) 추가 (+locale error)

날짜 형식을 변환하고 한글(월일)을 넣고 싶은 경우 아래와 같이 에러가 남. df['날짜'] = [i.strftime("%m월 %d일") for i in df['날짜']] >> 'locale' codec can't encode character '\uc6d4' in position 2: encoding error 해결방법1) 모두 적용 #코드추가 import locale print(locale.getlocale()) locale.setlocale(locale.LC_ALL, '') print(locale.getlocale()) 해결방법2) 해당 코드만 적용 df['날짜'] = [i.strftime("%m월 %d일".encode('unicode-escape').decode()).encode().decode(..

여러개의 Xls 파일을 Xlsx 파일로 변환하기(python,매크로 등) +엑셀서식

Excel 97-2003 워크시트(Xls)를 엑셀 최신버전(Xlsx)로 변환하는 방법은 여러가지가 있다. 나 같은 경우엔, 많은 파일을 동시에 변환할 수 있어야하며 기존 엑셀 서식(글꼴, 폰트, 셀 배경색 등)이 그대로 유지되어야했다. 그리고 특정 프로그램을 다운받고 싶지 않았기 때문에 나에게는 5번 매크로를 이용한 방법이 제일 괜찮았다. 1. 'xls2xlsx.exe' 프로그램 사용 엑셀 프로그램 실행없이 xls 파일과 xlsx 파일 여러개를 한번에 상호변환할 수 있음. 다운로드 필요. 일본어. 엑셀 서식 유지될 것으로 예상. 2. 엑셀 실행 (1개씩 변환) xls 파일 1개 열기 -> 파일 -> 정보 -> 변환(호환모드) -> 확인 엑셀 서식 유지 가능. 3. python 사용 파이썬 코드를 사용해 ..

Anaconda3 설치 오류

Anaconda3 설치가 안될 때, 아래 두 가지 경우를 생각해 볼 수 있다. 1. 저장경로의 폴더 이름이 한글로 되어 있는 경우 2. Anaconda3 설치 이전 파이썬을 설치했던 경우 1. 저장경로의 폴더 이름이 한글로 되어 있는 경우 아래와 같은 에러 문구가 뜰 경우 저장경로 폴더의 이름이 한글 또는 특수문자가 포함되었는지 잘 살펴보자. Error. Due to incompatibility with several Python libraries, 'Destination Folder' cannot contain non-ascii characters(special characters or diacritics). Please choose another location. 나 같은 경우는 바로 '사용자' 라는..

728x90
반응형