전체 글 119

[SQL]RAND함수

RAND 함수: 랜덤한 숫자를 불러오는 함수--i와 j 사이의 정수 R을 구하는 쿼리-- FLOOR(i + RAND() * (j − i))--7과 12사이의 정수SELECT FLOOR(7 + (RAND() * 5));   ORDER BY와 함께 사용하면, 랜덤한 순서로 데이터를 조회할 수 있다. -- customers에 있는 값을 랜덤으로 조회SELECT *FROM customersORDER BY rand();-- customers에 있는 값을 랜덤으로 10개만 조회SELECT *FROM customersORDER BY rand()LIMIT 10;-- 나이가 30 이상인 직원 중 랜덤하게 3명 추출SELECT * FROM employees WHERE age >= 30 ORDER BY RAND() LIMI..

[TIL]241127_코드카타, SQL 연습문제4

6. 동명 동물 수 찾기--[정답1] count(*) 와 where절 활용시 select name, count(*) as count #count(name) from animal_ins where name is not null group by name #집계함수(컬럼)을 쓰려면 [group by 컬럼]이 꼭 필요! having count(*) >= 2 order by name;-- [정답2] count(name) 활용 시 select name, count(name) as count #count(name)은 null값을 제외하고 카운팅!from animal_ins where name is not null = 2order by name;*WHERE, HAVING 차이https://dy..

[DBeaver]My SQL 연결, No database selected 에러, 단축키

DBeaver에 MySQL연결- for MAC [Mac] brew로 DBeaver Community 설치, MySQL DB 연결 방법맥북으로 DBeaver Community 프로그램을 설치하는 방법입니다. DBeaver 설치 진행DBeaver 공식 홈페이지에서 설치를 위한 brew 명령어를 확인할 수 있습니다.DBeaver 공식 홈페이지 바로가기dmg 파일을 다운priming.tistory.com - for Window MySQL 서버 설치하기, DBeaver로 데이터 생성, 조회하기MySQL은 데이터베이스의 한 종류로, 가장 범용적인 데이터베이스입니다. 일반적으로 회사에 데이터베이스에 구축되어 있으면 따로 로컬컴퓨터에 설치하지 않고 SQL WorkBench, DBeaver등 어플리케이션snowgot.t..

[SQL]코딩순서와 실행 순서, WHERE, HAVING 차이

[Cording order]1. SELECT2. FROM3.JOIN4. ON5. WHERE6. GROUP BY7. HAVING8. ORDER BY9. LIMIT [Execution order]1. FROM2. ON3. JOIN4. WHERE5. GROUP BY6. HAVING7. SELECT8. DISTINCT9. ORDER BY10. LIMIT    WHERE, HAVING 차이WHERE 절은 그룹화 전에 조건이 처리 된다. 위에 순서를 보면 알 수 있듯, WHERE은 GROUP BY 전에 오기 때문에 그룹화되지 않은 데이터들의 조건 값을 입력한다.HAVING 절은 그룹화한 결과에 조건을 걸고자 할 때 사용한다. HAVING 절은 집계함수를 이용한 조건비교를 할 때 사용한다.  예시)6. 동명 동물 수..

[SQL]WHERE절의 부정연산자_ !=, <>, NOT,NULL값이 아닐 때

같지 않다.!= : 같지 않다 : 같지 않다 (ISO표준 표기법)NOT 컬럼명 = ~보다 크지 않다. NOT 컬럼명 > A와 B 값 사이에 있지 않다. NOT BETWEEN A AND B list 값과 일치하지 않는다. NOT IN (list) NULL값을 갖지 않는다. IS NOT NULL예시)-- 동물리스트의 강아지 중에서 성별이 Male이 아니고, 나이가 3 이상 5 이하가 아닌 동물 찾기SELECT ANIMAL_TYPE, SEX, AGEFROM ANIMAL_INSWHERE ANIMAL_TYPE = 'Dog' AND NOT SEX = 'Male' -- SEX 'Male' 도 가능AND NOT AGE BETWEEN 3 AND 5 ;

[TIL]SQL코드카타, SQL과제Lv.2,3

1. 이름이 있는 동물 아이디SELECT ANIMAL_IDFROM ANIMAL_INSWHERE NAME !=''ORDER BY 1 2. 역순 정렬하기SELECT NAME,       DATETIMEFROM ANIMAL_INSORDER BY ANIMAL_ID DESC 3. 중복 제거하기SELECT COUNT(DISTINCT NAME) NAMEFROM ANIMAL_INS 4. 동물의 아이디와 이름SELECT ANIMAL_ID,       NAMEFROM ANIMAL_INSORDER BY 1 5. 동물 수 구하기SELECT COUNT(ANIMAL_ID) 'COUNT'FROM ANIMAL_INS Lv2. 날짜별 획득포인트 조회하기상황: 이번에는 이용자들이 잘 활동하고 있는지 보고자 합니다. 포인트가 많을수록 활..

[데이터분석]데이터 분석가는 어떤 일을 하나요?

https://medium.com/modulabs/%EC%BD%98%ED%85%90%EC%B8%A0-%ED%81%AC%EB%A6%AC%EC%97%90%EC%9D%B4%ED%84%B0-%EC%86%8C%EA%B0%9C-b2455d77c6d0 [데이터분석] 데이터 분석가는 어떤 일을 하나요?데이터 분석가의 업무와 필요한 역량에 대해 설명합니다.medium.com데이터 분석가는 어떤 일을 하는가?데이터 분석가 vs 데이터 엔지니어, 사이언티스트 : 분석가는 ‘기획자’에 가깝고, 데이터 엔지니어와 사이언티스트는 ‘개발자’ 쪽에 가깝다. 하지만 현실에서는 회사마다 직무의 구분 및 업무의 범위가 다르기 때문에 원하는 직무를 정하고 회사별 공고를 확인하는 것이 중요.수학&통계학 : 기초 통계학비즈니스/도메인 전문지식..

[TIL]241125_SQL자격증준비

모델링의 이해 데이터베이스에서의 모델 : 데이터베이스 관리 시스템(RDBMS)이 지원하는 데이터베이스의 구조나 형식. 모델 정보(구조)만 보고도 어떤 데이터를 다루는지 알 수 있다. 데이터 모델링 : 현실 세계를 얼마만큼 추상화시켜 표현할 것인지 그림을 그리는 과정. 데이터를 구조화하고 집약하는 작업. 데이터 모델링의 목적:1. 업무에 필요한 정보를 정확하게 '정의'하고 '표현'하여 업무를 분석2. 분석 모델을 통해 실제 데이터베이스를 생성하여 데이터를 관리 데이터 모델이 제공하는 기능- 시각화 : 시스템을 원하는 모습으로 보여줄 수 있도록 한다- 문서화 : 시스템의 구조와 행동을 문서화한다.- 구체화 : 특정한 목표에 따라 구체화된 상세 수준의 표현 방법을 제공한다.- 구조화된 툴 제공 : 시스쳄을 구..

[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=..