TIL (2024-04-25)

JayJay Choi·2024년 4월 25일
0

TIL

목록 보기
13/61

파이썬에 조금은 희망을 보게된 비전공자의 하루

Today Goal

✅ SQL 코드 카타 5개씩 풀고 오답⭕
✅ 파이썬 강의 절반이상 듣기⭕
✅ 시간이 되면 sql 3번 풀어보기❌

Today I Learn

✅ SQL 코드카타

✔루시와 엘라 찾기
동물 보호소에 들어온 동물 중 이름이 Lucy, Ella, Pickle, Rogan, Sabrina, Mitty인 동물의 아이디와 이름, 성별 및 중성화 여부를 조회하는 SQL 문을 작성해주세요.
✅ 오답노트 쿼리문

✔조건에 맞는 도서 리스트 출력하기
BOOK테이블에서 2021년에 출판된 '인문'카테고리에 속하는 도서 리스트를 찾아서 도서 ID(BOOK_ID), 출판일 (PUBLISHED_DATE)을 출력하는 SQL문을 작성해주세요. 결과는 출판일을 기준으로 오름차순 정렬해주세요.
✅ 오답노트 쿼리문

✔조건에 맞는 사용자와 총 거래금액 조회하기
USED_GOODS_BOARD와 USED_GOODS_USER 테이블에서 완료된 중고 거래의 총금액이 70만 원 이상인 사람의 회원 ID, 닉네임, 총거래금액을 조회하는 SQL문을 작성해주세요. 결과는 총거래금액을 기준으로 오름차순 정렬해주세요
✅ 오답노트 쿼리문

✔가격대 별 상품 개수 구하기

PRODUCT 테이블에서 만원 단위의 가격대 별로 상품 개수를 출력하는 SQL 문을 작성해주세요. 이때 컬럼명은 각각 컬럼명은 PRICE_GROUP, PRODUCTS로 지정해주시고 가격대 정보는 각 구간의 최소금액(10,000원 이상 ~ 20,000 미만인 구간인 경우 10,000)으로 표시해주세요. 결과는 가격대를 기준으로 오름차순 정렬해주세요.
✅ 오답노트 쿼리문


✅ 오늘 알게된 SQL 내용

✔1번

SELECT 
FROM   USED_GOODS_BOARD 

UNION (ALL)

SELECT  USER_ID
        ,NICKNME
FROM    USED_GOODS_USER

✔UNION은 컬럼명이 동일할 필요는 없고
열의 갯수와 순서가 모든 쿼리에서 동일해야 한다.
또한, 데이터의 형식이 일치해야 합니다
열의 갯수가 맞지 않으면 null을 사용해 형식을 맞추고 별칭 지정으로 컬럼명을 바꿀수 있다(?)
처리 순서는 where 다음 순서이다.
union은 테이블을 미리 뽑아놓고 합친다고 생각하면 될꺼같다

<예시>

SELECT DATE_FORMAT(sales_date,'%Y-%m-%d') SALES_DATE,product_id, user_id, sales_amount
FROM online_sale o
WHERE sales_date LIKE '2022-03%'
UNION ALL
SELECT DATE_FORMAT(sales_date,'%Y-%m-%d') SALES_DATE,product_id, NULL, sales_amount
FROM offline_sale f
WHERE sales_date LIKE '2022-03%'
ORDER BY 1, 2, 3 

✔2번

SELECT
FROM    USED_GOODS_BOARD B 
JOIN    USED_GOODS_USER U
ON      B. =U.

두개의 테이블을 열어보고 컬럼안에 데이터가 동일한것이 있으면
컬럼 명이 달라도 JOIN을 사용할 수 있다.

✔3번

SELECT
FROM USED_GOODS_BOARD UGB, USED_GOODS_USER UGU

처리 속도가 빠른 MS SQL방식 두테이블을 그냥 붙이는 방법,
WHERE절에서 조건들로 걷어내는 방식 , 잘 사용하는 방식은 아님

사전 강의와 전날 배웠던 유니언에 대해 뭔가를 잘못 알고 있는거 같아서 튜터님을 찾아가 물어보고 해답을 찾았다.

✅ 오늘 알게된 Python 내용

✔ sort(reverse=true)와 reverse() 차이

sort(reverse = trun)은 내림차순

reverse() 단순히 리스트의 자료를 뒤집는것.

✔리스트와 튜플의 차이

리스트 :가장 많이 사용되는 데이터 구조 가변한 시퀀스(순서대로 나열되는 자료)

변경이 가능한것 vs 변경이 불가능한 것

✔input("첫번째 숫자를 입력하세요; ")에서 int는 문자열이다.

내가 숫자열로 변경을 원한다면

int(input("첫번째 숫자를 입력하세요; "))으로 int 함수를 꼭써야한다.

변수에 저장할때,

string은 문자열
int는 실수

How was it?

✔ 오늘 SQL을 푸는데 조금은 수월했다. 그래도 모르는 것이 있어서 튜터님께 여쭤보고 빠르게 해결하는 날이었다.

✔ 파이썬 종합반을 듣기 시작한 날이다. 모든 것들이 새롭고 쉽게 알려줘셔서 마음이 편하게 들었던거 같다. 정말.. 다시 파이썬에 대해 구원을 받은 기분이었다.

profile
차근차근 열심히 따라가보는 왕초보의 기록들!

0개의 댓글