2024/11/22 5

[TIL]SQL과제_Lv1. 데이터 속 김서방 찾기

문제: 다음과 같은 결과테이블을 만들어봅시다.name_cnt: “김”씨 성을 가지고 있는 교육생의 수내가 쓴 쿼리:SELECT name, IF(name = '김**',COUNT(name),0) 'cnt_name'FROM usersGROUP BY 1ORDER BY 1 문제점: 1. 김씨의 데이터가 1행에 표시되지 않음.2. 본 데이터에서는 김**으로 지정하기 쉬웠지만 실제 데이터는 김씨를 가진 이름이 모두 다를 수가 있음. 해결 방법: substr 내장함수 사용. distinct으로 중복값 제거SELECT COUNT(DISTINCT(user_id)) as name_cntFROM usersWHERE SUBSTR(name,1,1) = '김'결과 값:

[Python]함수의 매개변수

함수에 인수를 넣을 때, 어떤 매개변수에 어떤 값을 넣을지 정해줄 수 있다. 순서 상관 없음!def cal(a, b): return a + 2 * bprint(cal(3, 5)) #-> 자동으로 a=3 b=5로 지정됨print(cal(5, 3)) #-> 순서를 바꾸면 a=5 b=3print(cal(a=3, b=5)) #-> a=3 b=5으로 지정하면print(cal(b=5, a=3)) #-> 순서를 바꿔도 a=3 b=5으로 지정 특정 매개변수에 디폴트 값을 지정해줄 수 있다.def cal2(a, b=3): return a + 2 * bprint(cal2(4)) # a=4 b=3print(cal2(4, 2)) # a=4 b=2print(cal2(a=6)) # a=6 b=3print(cal2(a=..

[Python]map, filter, lambda

map : 리스트의 모든 원소를 조작하기lambda 함수 : def 키워드를 사용하여 함수를 정의하는 것보다 간결하고 간편한 방식으로 함수를 정의할 수 있다.기본 형태:lambda 인자 : 표현식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}]#1차 조작def check_adult(p..

[Python]삼항연산자

if 문num = 3if num%2 == 0: result = "짝수"else: result = "홀수"print(f'{num}은 {result}입니다.') if 문의 삼항연산자num = 3result = "짝수" if num%2 == 0 else "홀수"print(f"{num}은 {result}입니다.") for 문a_list = [1, 3, 2, 5, 1, 2]b_list = []for a in a_list: #a_list에 있는 a값을 가지고 b_list.append(a*2) #b_list에 a*2한 값을 추가해라print(b_list)#결과 값: [2, 6, 4, 18, 2, 4]  for문의 삼항연산자a_list = [1, 3, 2, 5, 1, 2]b_list = [a*2 f..

[Python]튜플, 집합, f-string, try except

튜플(tuple) : 리스트와 비슷하지만 불변형인 자료리스트의 경우 리스트를 추가하거나 변경하는 것이 가능하지만a = ['사과','감','배'] #리스트는 '['를 사용하며 묶는다.a[1] = '수박' #리스트 a의 1번째 원소를 수박으로 변경print(a)#결과 값: ['사과','수박','배'] 튜플의 경우, 추가나 변경이 불가능 하다.a = ('사과','감','배') #튜플은 '('을 사용a[1] = '수박' print(a)#결과 값: Error 주로 딕셔너리 대신 리스트와 튜플로 딕셔너리 '비슷하게' 만들어서 사용한다.people = [('bob','24'),('john','29'),('smith','30')]#people의 모든 요소의 0번째는 이름이 나올 것이고, 1번째는 무조건 나이가 나온다...