2025/10 19

[아이티윌 빅데이터 52기] DBML 데이터 베이스 설계 실습

데이터 베이스 설계 실습[최종 산출물] 기존에 존재하는 데이터 명세서를 기준으로 vs code 에 ERD 를 그려보자 //학과 테이블Table departments { id int [pk,increment,note: "학과 번호"] dname varchar(100) [not null, note:"학과명"] loc varchar(100) [not null, note:"위치"] phone varchar(15) [not null, note:"전화번호"] email varchar(100) [not null, note:"이메일 주소"] established int [not null, note:"설립 연도"] homepage varchar(255) [not null..

[아이티윌 빅데이터 52기] Day 6 데이터 베이스 설계

데이터 베이스 설계-VS 코드 활용-ERD 기반 DB 설계-트랜잭션의 이해 IDE 의 이해 (Integrated Development Environment)통합 개발 환경으로 코딩, 디버그,컴파일,배포 등 프로그램 개발과 관련된 모든 작업을 하나의 프로그램에서 처리하는 환경을 제공하는 소프트웨어 *VS 코드 사용시에는 항상 나의 산출물을 저장할 폴더를 생성한 후 작업을 시작해야함나의 파일이 어디에 저장되고 있는지, 개인 파일 관리 신경써서 하기! 만들어진 파일에서 새 파일 + 확장자 제대로 지정해주기VS CODE 에서 만든 파일들은 실제 문서에 동일하게 저장 데이터 베이스의 설계 단계데이터 모델링의 3단계 1. 개념적 모델링-추상화 수준이 가장 높고, 구체화되기 이전 단계.-중요한 부분 위주로 모델..

프로그래머스 SQL 오답노트 Level 3 오랜 기간 보호한 동물 (2)

프로그래머스 SQL 오답노트오랜 기간 보호한 동물 (2) 입양을 간 동물 중, 보호 기간이 가장 길었던 동물 두 마리의 아이디와 이름을 조회하는 SQL문을 작성해주세요. 이때 결과는 보호 기간이 긴 순으로 조회해야 합니다. SELECT o.animal_id animal_id ,datediff(o.datetime, i.datetime) datediff FROM ANIMAL_INS i inner join animal_outs o on i.animal_id = o.animal_idorder by datediff desc datediff(o.datetime, i.datetime) datediff 를 select 절에서만 사용하려 했음.날짜 비교 구분은 where 절에서 바로 사용이 가능했음 SELECT o.a..

SQL 2025.10.14

[아이티윌 빅데이터 52기] Day 5 고급 데이터 조회 2 / 데이터 베이스 구축

고급 데이터 조회 2 / 데이터 베이스 구축-INNER/OUTER 외의 JOIN ( SELF JOIN ,EQUI JOIN ,CROSS JOIN)-서브쿼리 (단일행 / 다중행 / 스칼라 / 인라인뷰)-데이터 베이스 관리-테이블 관리 EQUI JOIN기본적으로 INNER JOIN 과 동일함ANSI SQL 은 모든 DBMS 가 따르는 표준적인 문법2개 이상의 테이블에서 데이터를 조회하면서, WHRER 절을 통해 JOIN 조건을 명시함FROM 절에는 , 를 기준으로 테이블 명시 JOIN 조건을 써준 후에 추가적인 필터링은 AND 로 이어줄 수 있음 CROSS JOINEQUI JOIN 에서 JOIN 조건이 제외된 경우 즉, 조합 가능한 모든 경우의 수가 생성 (카테시안곱) SELF JOIN하나의 테..

프로그래머스 SQL 오답노트 251010

프로그래머스 SQL 오답노트자동차 평균 대여기간 구하기문제: CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블에서 평균 대여 기간이 7일 이상인 자동차들의 자동차 ID와 평균 대여 기간(컬럼명: AVERAGE_DURATION) 리스트를 출력하는 SQL문을 작성해주세요. 평균 대여 기간은 소수점 두번째 자리에서 반올림하고, 결과는 평균 대여 기간을 기준으로 내림차순 정렬해주시고, 평균 대여 기간이 같으면 자동차 ID를 기준으로 내림차순 정렬해주세요. 틀린 이유: 대여 기간은 당일 하루 빌린것도 처리해야 하므로 날짜 계산 시 +1 계산SELECT CAR_ID, ROUND(AVG(DATEDIFF(END_dATE,START_dATE)+1),1) AVERAGE_DUR..

SQL 2025.10.10

[아이티윌 빅데이터 52기] Day 4 데이터 입력/수정/삭제/데이터 고급 조회 1

데이터 입력 / 수정 / 삭제 / 데이터 고급 조회 1-데이터 입력하기-데이터 수정/삭제-INNER JOIN / OUTER JOIN 데이터 입력하기(1) 데이터 저장하기 INSERT INTO-나열되는 컬럼 순서는 테이블 구조와 일치하지 않아도 괜찮음-VALUE 와 컬럼은 1:1 대응 필요 데이터의 무결정> 잘못된 데이터가 들어가는 것을 방지하고, 올바른 데이터만 유지되도록 보장하는 것> 무결성을 보장하기 위해 테이블 생성 시 적절한 제약 조건을 설정 (테이블 생성 시 지정하는 옵션)> 데이터 조회보다는 입력/ 수정 / 삭제 할 때 지키는 옵션들 (1) 엔티티 무결성-각 행은 고유해야하고, 각 행을 식별하기 위해서 NULL 이 아닌 고유 값(일련 번호) 가 필요하다 | 기본키 (PRIMARY KEY..

[아이티윌 빅데이터 52기] Day 3 SQL 함수 2 그룹 조회

SQL 함수2 그룹 조회-날짜 시간 함수-형변환 / 조건 함수-집계 함수-그룹 조회-윈도우 함수 날짜 시간 함수 1. 현재 날짜/ 시간 조회 : NOW() CURDATE() CURTIME()NOW() 현재 날짜와 시간 반환CURDATE(): 현재 날짜만 반환CURTIME():현재 시간 반환 *컴퓨터에 내장된 값을 가져오기 때문에 FROM 안 붙음SELECT NOW() AS 현재_날짜시간, CURDATE() AS 오늘날짜, CURTIME() AS 현재시간; 2,테이블에 저장된 날짜 데이터를 가져오는 DATE() ,TIME()-데이터 타입이 날짜/시간인 경우에 대해 활용 가능 3. YEAR() MONTH () DAY()년도 월 일자를 추출 4.DATE_ADD () 날짜 연산DATE_ADD(DATE, I..

[아이티윌 빅데이터 52기] Day 2 데이터 검색하기 SQL 함수

데이터 검색하기 SQL 함수 1-데이터 검색하기-집합 연산자-문자열 함수-숫자 함수 WHERE ,UNION, INTERSECT ,EXCEPT, 를 이해문자열/숫자 함수의 종류 파악 WHERE 절의 사용-특정 검색 조건을 만족하는 행만 조회-비교 / 논리/ SQL 연산자 비교 연산자 : = . != , ,>= , 논리 연산자 : AND . OR . NOT -AND 모든 조건이 참 / OR 하나라도 참 -괄호를 적용하면 우선적으로 적용 SELECT * FROM STUDENTS WHERE (GRADE =1 OR GRADE = 2) AND STATUS = '재학;ORDER BY GRADE ASC; -AND 가 OR 보다 우선적으로 적용SELECT * FROM STUDENTS WHERE GRADE =1..

[아이티윌 빅데이터 52기] Day 1 데이터 베이스의 시작하기

마리아 DB 는?거시적인 UI 없이 백그라운드에서 작동하는 서버 프로그램 *커맨드 라인 인터페이스 CLI이와 반대되는 사용자 인터페이스가 있으면 GUI 라고 함 서버와 클라이언트클라이언트는 특정 요청을 보내는 입장 (웹 브라우저 , 배달앱)서버는 요처을 받아 처리하는 입장 (웹 사이트, 배달 시스템) 마리아 DB 접근하기단축키 : 윈도우 + R 누르면 아래와 같은 옵션이 활성화 되고, cmd 를 누르면 터미널로 진입함 C:\Users\itwill>mariadb -uroot -pEnter password: ****Welcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 8Server version:..