일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 시계열
- 머신러닝
- Eda
- 에이블스쿨
- hadoop
- ETRI
- arima
- 한국전자통신연구원 인턴
- 시각화
- matplot
- SQL
- KT 에이블스쿨
- 지도학습
- kt aivle school
- 서평
- 하계인턴
- httr
- python
- 가나다영
- 한국전자통신연구원
- ML
- ggplot2
- r
- 다변량분석
- 빅분기
- 웹크롤링
- KT AIVLE
- Ai
- kaggle
- cnn
- 에이블러
- 하둡
- 소셜네트워크분석
- 에트리 인턴
- 프로그래머스
- 기계학습
- 빅데이터분석기사
- dx
- SQLD
- 딥러닝
- Today
- Total
목록SQL (20)
소품집
DAsp 따려고 알아보다가 보수교육 있던 거 생각나서 봤더니 3개월 남았네요. 😅 아예 잊고있다가 자격증 취소되는 사람 될 뻔 ㅎ 다들 꼭 보수교육 들으세용
문제 설명 문제를 먼저 이해하고 처리해줄 걸 생각해보면 - 두개의 테이블에서 외래키로 조인 - 입양간 친구를 제거 - 정렬하여 가장 오래 보호소에 있던 친구찾기 를 수행해주면 된다! 그래서 풀어보면 # 먼저 문제를 이해하자면 # - 입양 안간 동물에서 (입양간 테이블에서 제거해주고) 가장 오래 보호소에 있었던 동물 3마리를 뽑아오면 된다. # table1: animal_ins (보호소) a, animal_outs(입양 감) b select a.name, a.datetime from animal_ins a left outer join animal_outs b on a.animal_id = b.animal_id where b.animal_id is null order by a.datetime limit 3;
문제 설명 예시 select animal_id, name, case when sex_upon_intake like '%neutered%' or sex_upon_intake like '%spayed%' then 'O' else 'X' end as '중성화' from animal_ins order by animal_id; 우하하 case 구절로 풀어내는 문제였습니다~ (21.11.27) 문제 살짝 바뀜 보호소에서 중성화 수술을 거친 동물 정보를 알아보려 합니다. 보호소에 들어올 당시에는 중성화1되지 않았지만, 보호소를 나갈 당시에는 중성화된 동물의 아이디와 생물 종, 이름을 조회하는 아이디 순으로 조회하는 SQL 문을 작성해주세요. like문이나 case문을 사용하지 않고, 간단하게 들어올 때 나갈 때 SE..
문제 설명 예시 select name, count(name) as count from animal_ins where name is not null group by name having count >=2 order by name; sqld 문제에서도 많이 푼 group by > having 절 문젠데 이항연산으로 풀어내다가 오류났다.ㅎㅎ 그래서 결론은 group by > having 절로 풀어냄!
문제 설명 동물 보호소에 들어온 동물 중 고양이와 개가 각각 몇 마리인지 조회하는 SQL문을 작성해주세요. * 이때 고양이를 개보다 먼저 조회하게 해주세요. 예시 난 고양이를 개보다 먼저조회하는 조건이 있다고 했을때 이 조건을 생각하기 전 테스트 결과가 같아서..ㅋㅎ 그냥 실행했더니 오답! 그래서 case 문으로 고양이가 먼저 나오게 조건을 달아줬다. select animal_type, count(animal_type) from animal_ins group by animal_type order by case when 'cat' then 1 when 'dog' then 2 else 3 end; 아니면 order by로 정렬하면 된다. 이게 더 간단 간단 select animal_type, count(an..
정규화란? 정규화는 데이터의 일관성, 최소한의 데이터 중복, 최소한의 데이터 유연성을 위한 방법이며 데이터를 분해하는 과정이다. 정규화된 모델은 테이블이 분해된다. 테이블이 분해되면 직원 테이블과 부서 테이블 간에 부서코드로 조인(join)을 수행하며 하나의 합집합으로 만들 수 있다. 정규화를 하면 불필요한 데이터를 입력하지 않아도 되기 때문에 중복 데이터가 제거된다. 정규화 절차 정규화의 문제점 정규화는 데이터 조회(select) 시에 조인(join)을 유발하기 때문에 CPU와 메모리를 많이 사용한다. 아래 코드를 프로그램화 한다면 중첩된 루프(Nested Loop)를 사용해야 한다. [ANSI JOIN} select 사원번호, 부서코드, 부서명, 이름, 전화번호, 주소 from 직원, 부서 where..
엔터티(Entity) 엔터티는 업무에서 관리해야 하는 데이터 집합을 의미하며, 저장되고 관리되어야하는 데이터이다. 엔터티는 개념, 사건, 장소 등의 명사이다. 엔터티 특징 [Relation, Table, Instance?] Relation: 테이블 Relation에 기본키 및 제약조건을 설정하면 테이블이 된다. Relationship: Relation간의 관계 Instance: Relation이 가질 수 있는 값을 의미한다. 간단하게 행의 수라고 생각! 엔터티 종류 유형과 무형에 따른 엔터티 종류 유형 엔터티 개념 엔터티 사건 엔터티 발생 시점에 따른 엔터티 종류 기본 엔터티 사건 엔터티 행위 엔터티 속성(Attribute)의 특징 속성은 업무에 관리되는 정보이다. 속성은 하나의 값만 가진다. 주식별자에..
3층 스키마 사용자, 설계자, 개발자가 데이터베이스를 보는 관점에 따라 데이터베이스를 기술하고 이들 간의 관계를 정의한 ANSI의 표준 3층 스키마는 데이터베이스의 독립성을 확보하기 위한 방법 3단계 계층으로 분리해서 독립성을 확보하는 방법으로 각 계층을 뷰(View)라고 한다. 3층 스키마의 독립성 논리적 독립성 → 개념 스키마가 변경되더라도 외부 스키마가 영향을 받지 않는 것이다. 물리적 독립성 → 내부 스키마가 변경되더라도 개념 스키마가 영향을 받지 않는 것이다. 3중 스키마 구조
데이터 모델링이란? 데이터 모델링은 현실세계를 데이터베이스로 표현하기 위해 추상화한다. 데이터 모델링을 하기 위해서는 고객의 업무 프로세스를 이해하여야 하며, 데이터 모델링 표기법을 사용해서 모델링을 한다. 데이터 모델링은 고객의 업무 프로세스를 추상화하고, 소프트웨어를 분석, 설계 하면서 점점 더 상세해진다. 데이터 모델링은 고객의 비즈니스 프로세스를 이해하고 비즈니스 프로세스의 규칙을 정의한다. 정의된 비즈니스 규칙을 데이터 모델로 표현한다. 데이터 모델링의 특징 데이터 모델링 단계 데이터 모델링 단계 데이터 모델링 관점 데이터 모델링을 위한 EDR(Entity Relationship Diagram) EDR 작성 절차 엔터티를 도출하고 그린다. 엔터티를 배치한다. 엔터티 간의 관계를 설정한다. 관계명..
내장형 함수란? 모든 데이터베이스는 SQL에서 사용할 수 있는 내장형 함수를 가지고 있다. 내장형 함수로는 형변환 함수, 문자열 및 숫자형 함수, 날짜형 함수가 있다. DUAL 테이블 DUAL 테이블은 Oracle 데이터베이스에 의해서 자동으로 생성되는 테이블이다. Oracle은 기본적으로 DUAL 테이블이라는 dummy 테이블이 존재한다. Oracle 데이터베이스 사용자가 임시로 사용할 수 있는 테이블로 내장형 함수를 실행할 때도 있다. Oracle 데이터베이스의 모든 사용자가 사용할 수 있다. 내장형 함수의 종류 문자열 함수 문자형 함수 예시 select ASCII('a') substr('ABC',1,2), length('A BC'), LTRIM(' ABC'), lenght(LTRIM(' ABC'))..