천고마비의 계절이다.
근데 난 살찌면 안된다.
가뜩이나 먹어대는걸 좋아해서
몸무게가 아주 고무줄처럼 줄었다가 늘어난다.
그래서 요즘 더 헬스장에서 운동을 빡시게 하는 것 같다.
오늘은 SQL 1-6~9, python 1-1~7까지 수강하였다.
추가적으로 어제 했던 내용들도 수강 하기전 review하였다.
SQL 부터 먼저 시작해보자.
오늘은 비교연산부터 시작하였다.
select *
from customers
where age<21
customers 데이터에서 age가 21세 미만인 사람들의 정보를 추출해보았다.
select *
from customers
where age between 10 and 20
추가적으로 나이가 10~20세인 사람들의 정보도 추출해보았다.
select *
from customers
where age in 21
이건 21살인 경우의 사람들의 정보를 추출하는거고, 여러 나이로 할 경우 (14, 21, 22, 24---)로 하면 된다.
select *
from food_orders
where cuisine_type in ('Korean')
이건 식당이 한식을 하는건가에 대한 코드이다.
select *
from customers
where name like '김%'
이건 '김'으로 시작하는 이름을 추출하는 코드이다.
select *
from food_orders
where restaurant_name like '%Next%'
이건 식당 이름에 'Next'라는 이름을 가지고 있는 경우를 추출하는 코드이다.
select *
from customers
where name like '%임'
이건 '임'으로 끝나는 이름을 추출하는 코드이다.
select *
from food_orders
where cuisine_type='Korean' and price>=30000
추가적으로 and, or, Not을 사용하여 여러개의 조건으로 filtering을 할 수 있다.
SQL은 여기까지 하고,
python으로 넘어가보자.
python은 pycharm으로 하고 있다.
원래 내가 독학할 때는 visual code로 했는데,
새롭게 다른것도 해볼 필요가 있다.
money = 3800
if money > 3800:
print('택시를 타자!')
elif money > 1200:
print('버스를 타자!')
else:
print('택시를 못타~')
print('그럼 뭘타지?')
money = 5000
if money > 3800:
print('택시를 타자!')
elif money > 1200:
print('버스를 타자!')
else:
print('걸어가자')
조건문을 해보았다. 간단하면서도 나한테는 초반에 입력할 때 헷갈렸다.
아무리 이과라도 이게 뭐지.... 하면서 멍때리기도 했다.
fruits = ['사과', '배', '감', '수박', '딸기']
for fruit in fruits:
print(fruit)
#quiz
people = [
{'name': 'bob', 'age': 20},
{'name': 'carry', 'age': 38},
{'name': 'john', 'age': 7},
{'name': 'smith', 'age': 17},
{'name': 'ben', 'age': 27},
{'name': 'bobby', 'age': 57},
{'name': 'red', 'age': 32},
{'name': 'queen', 'age': 25}
]
for person in people:
name = person['name']
age = person['age']
if age > 20:
print(name, age)
print(people[0])
#quiz + 알파
people = [
{'name': 'bob', 'age': 20},
{'name': 'carry', 'age': 38},
{'name': 'john', 'age': 7},
{'name': 'smith', 'age': 17},
{'name': 'ben', 'age': 27},
{'name': 'bobby', 'age': 57},
{'name': 'red', 'age': 32},
{'name': 'queen', 'age': 25}
]
for i, person in enumerate(people):
name = person['name']
age = person['age']
print(i, name, age)
if i > 2:
break
print(people[0])
#quiz chapter 1 짝수 요소 출력하기
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
for num in num_list:
if num % 2 == 0:
print(num)
#quiz chapter 2 짝수의 개수 출력하기
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
count = 0
for num in num_list:
if num % 2 == 0:
count = count + 1
#count += 1 도 가능
print(count)
#quiz chpater 3 모든 숫자 합하기
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
sum = 0
for num in num_list:
sum += num
print(sum)
#quiz chapter 4 가장 큰 놈 구하기
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
max = 0
for num in num_list:
if max < num:
max = num
print(max)
반복문도 계속 해보았는데, 첫번 째 데이터를 뽑아낼려면 [0]을 해야한다는걸 계속 잊어먹었다.
쉽지 않네 이게.
그래도 계속 해보니까 어느정도 할만해졌다.
people = [
{'name': 'bob', 'age': 20, 'score':{'math':90,'science':70}},
{'name': 'carry', 'age': 38, 'score':{'math':40,'science':72}},
{'name': 'smith', 'age': 28, 'score':{'math':80,'science':90}},
{'name': 'john', 'age': 34, 'score':{'math':75,'science':100}}
]
print(people[2]['score']['science'])
list랑 dict도 해보았다. 여기서도 몇번째가 []로 표현할 때 어느숫자를 넣어야 하는지가 참 나에게 힘들었다. 유치원생 때 처럼 숫자 하나하나 새가면서 짱구를 굴렸다.
상품 준비시간이 20~30분 사이인, 한국음식점의 식당명과 고객번호 조회해봅시다.
아래의 조건을 참고하여 SQL문을 작성해주세요.
1. 조회해야 할 컬럼 특정하기
2. ‘사이’ 조건 : BETWEEN
3. 특정 조건 지정 : =
4. 복수의 조건 지정 : AND
select restaurant_name , order_id
from food_orders
where food_preparation_time between 20 and 30
and cuisine_type='Korean'
간단한 실습 문제가 있었다.
난 select에다가 food_preparation_time, cuisine_type까지 넣어서 제출했다가 틀렸다고 한다.
뭐 필터링 열심히 해서 그거까지 보고 싶었나보다.
아무튼 이런 사소한 디테일때문에 틀리기도 한다. 조금 더 신경써보자.
추가적으로 SQL 다른 연습문제도 해보았다.
select name, position
from sparta_employees
select distinct position
from sparta_employees
select id, name, position, salary, hire_date
from sparta_employess
where salary between 40000 and 60000
select id, name, position, salary, hire_date
from sparta_employess
where hire_date <= '2023-01-01'
2번째 코드를 보게 되면 중복 없이 position을 선택해야 하는데,
처음에 된통 기억이 안나서 3분동안 고민하다가 구글링을 해서 distinct를 찾아냈다.
4번째도 hire date를 기준으로 하여 분류를 해야 하는데,
이것도 어떤걸 응용해야 하는지 계속 끄적이다가
부등호를 쓰면 되지 않을까? 라고 생각이 확 들어 해보니까 되었다.
아 주 좋 다. 이렇게 계속 머리를 굴리는거다.
내일은 SQL chapter1 복습 및 chapter2, python 끝까지 다 듣기이다.
추가적으로 visual code로도 데이터 시각화를 독학하고 있긴 한데,
통계학 강의가 colab으로 하고 있어서,
visual code에서도 적용 가능하게 내가 공부를 해봐야 할 것 같다.
그리고 퀘스트좀 신경쓰자.
화이팅.