분류 전체보기

DI(Digital Innovation)/DataBase & SQL 뽀개기

저장 프로시저 stored procedure 쓰면 나도 알파메일

하나부터 열까지다 널 위한 소리 ~ 내 말 듣지 않는 너에게는 뻔한 잔소리… 하루에도 열번씩 짜는 쿼리가 있다고 칩시다. 그때마다 직접 문장을 길게 타이핑하고 있으면 화가 좀 나겠죠? 그럴때 stored procedure(저장프로시저)를 사용합니다. stored procedure는 코드 덩어리 저장 가능 그래서 SELECT FROM 이런 긴 쿼리를 저장하고 재사용하고 싶다면 stored procedure 기능을 사용하면 됩니다.(문장저장기능이라 보믄댐.) 그냥 평소에 저희가 코딩할때 함수를 떠올리면 쉽습니다. 그거랑 똑같음 stored procedure 쓰는 법 일단 product 테이블에서 SELECT 문을 사용한다고 칩시다. SELECT * FROM product WHERE 가격 > 5000 근데 이..

DI(Digital Innovation)/DataBase & SQL 뽀개기

table 대신 view 쓰는 이유!?!?

저희가 이제 가끔씩 쿼리를 잘 보다보면 create table이 아닌 create view하는 경우가 있습니다. 이게 사실 둘다 똑같은데요. 먼지 한번 파헤쳐봅시다.(파묘 아닌 파뷰) VIEW가 무엇이냐? 저희가 갑자기 여러 select 쿼리를 날리다가 마음에 드는 행이 출력된 결과가 있었습니다. 이거를 테이블로 두고두고 저장해서 쓰고 싶습니다. 그럴때 이제 실제 테이블로 저장해도 되지만 더 간단하게 view로 만들어 저장할 수 있습니다. view는 가상의 테이블인데, 실제 테이블처럼 사용할 수 있습니다. CREATE VIEW 뷰이름 AS SELECT 컬럼1, 컬럼2, ... FROM 테이블명 view 만드는 문법은 이렇습니다. SELECT로 찾은 행을 view로 만들어줘라는 코드입니다. 이전에 사용했던..

느낀 것들

열등감은 나의 힘

보호되어 있는 글입니다.

DI(Digital Innovation)/DataBase & SQL 뽀개기

데이터 수정 삭제는 UPDATE / DELETE

오늘은 DML 조작어(Data Manipulation Language) 중 UPDATE, DELETE(수정, 삭제) 빠르게 알아보도록 하겠습니다. 스겜 ㄱㄱ UPDATE / SET 특정 행의 데이터를 수정하고 싶다면 update 날려줍니다.UPDATE 테이블 SET 컬럼1 = 값, 컬럼2 = 값 WHERE 조건식 SET 뒤엔 컬럼마다 어떤 값으로 수정할 지 선택합니다. WHERE 뒤엔 어떤 행을 업데이트 할 것인지 필터링을 넣어줍니다. 이게 맞을까요? 으구 이 순진한 사람아!!! 믿을 것 없는 세상 거짓말 일수도 있잖아요. 한번 직접 보도록 하시죠.이전에 썼던 product 테이블입니다. 아이폰이 갑자기 자기네도 양심상 너무 비싸다며 갤럭시와 똑같이 130만원으로 낮춘다는 것입니다. 한번 수정해보도록 하..

DI(Digital Innovation)/DataBase & SQL 뽀개기

데이터 넣거나 복사하려면 INSERT

오늘 목요일이자나요.. 이번주 저 같은 경우는 시간이 진짜 너무 너무 안가요. 이럴수가 있나? 세상이 나한테 몰카하는 건가? 여러분 뻥치지마요. 다들 월화수목금인데 저만 누가 몰래 월화수수목금으로 끼워놓은 거죠?? 오늘 공부를 마치고 난다면 정신력과 체력이 완전히 방전이 될 것 같슴다..ㅠㅠ 하지만 내일은 불타본적 없는 금요일이니 저는 오늘도 어디인지 모르는 저의 자리에서 최선을 다하며 살겠습니다. p.s 기본포켓몬 세마리 다모음 INSERT문 함께 보시죠. 테이블에 데이터를 넣고싶다? DBMS 에서 직접 클릭하고 데이터를 일일이 넣을 수 있는데 대량 or 자동으로 넣고 싶으면 당연히 쿼리로 합니다. 새로 테이블 아무데나 만들고 함 해봅시다. 연습용 테이블 만들기 아무 데이터베이스나 만들어보겠습니다. C..

DI(Digital Innovation)/DataBase & SQL 뽀개기

LEFT AND RIGHT(feat. jungkook of BTS) JOIN

테이블을 여러개 출력하고 싶다면 INNER JOIN을 쓰면 된다고하였습니다. 그리고 공통점이 있는 행만 필터링 하고 싶다면 ON을 쓰는 것도 배웠습니다. 근데 공통점이 하나도 없는 테이블을 JOIN 하고 싶다면??? 그때는 LEFT JOIN, RIGHT JOIN, OUTER JOIN 을 쓰면 됩니다. 일케 두 테이블이 있습니다. 왼쪽 테이블 전체 + 공통된 행 출력하고 싶으면 LEFT JOIN 그러니까유 지난 시간에 했던 INNER JOIN 결과 + 왼쪽 테이블 모든 행을 출력하고 싶다면 LEFT JOIN 쓰는 겁니다. SELECT * FROM program LEFT JOIN teacher ON program.강사id = teacher.id ⬆️ 진짜 모든 행이 나오는구만요 왼쪽 테이블의 강사id와 일치..

DI(Digital Innovation)/DataBase & SQL 뽀개기

JOIN 하는게 쉬워보이면 그 분은 이미 전문가

오늘은 join 문법을 파헤쳐보도록 하겠습니다. SQL 실력자들은 보통 join을 자유자재로 하는데요. 제가 스승으로 모시고 있는 용xx준 님도 스승님 이거 테이블 join 어떻게 해요 물어보면 ‘아 이거 별거 아니자나 이거 쉬움ㅋㅋ’ 이라고 하십니다. 누군가 일을 쉽게 한다? 그 분은 이미 전문가이십니다. 그럼 저희도 전문가로 가기위한 첫 발걸음을 떼 보도록 하겠습니다. ㄹㅊㄱㄹ 제 n정규형이 된 테이블을 만드는 것까지는 좋은데, 그거 한다고 해서 테이블을 다 쪼개 놓는다면 나중에 출력은 어떡할까요. 실은 SELECT, JOIN 문법으로 요리조리 잘 쓰면 되기 때문에 걱정할 필요 없습니다. JOIN을 쉽게 이해하려면 테이블을 합치는 방법부터 알아야합니다. 알아보시죠. 다른 테이블에 있는 컬럼도 한꺼번에..

DI(Digital Innovation)/DataBase & SQL 뽀개기

국나뇽이 말아주는 엔티티관계도(ERD)

열어분 제가 지난번에 모라그랬죠? DB를 설계할때 정규화로 테이블을 쪼개면 좋다고했죠 하지만 테이블을 그런식으로 100개를 쪼개놓는다면? 나중에 테이블 하나를 보고 있을때 이게 먼 테이블인가 판단하기 어질어질합니다. 그래서 테이블들의 관계를 도식화해서 그려놓기도 하는데요. 이것을 안티티티티 프레자일이 아니라 엔티티 관계도(ERD : Entity Relationship Diagram)이라고 합니다. ⬆️ 요로콤 생겼습니다. 새로운 기능을 추가하기위해 DB 설계를 위해 ERD부터 그리라고 요구하는 사람이 있기도하고, join 연산 같은거 할때 테이블간의 관계를 파악할때 ERD로 찾기도 합니다. 저희는 ERD를 직접 사용해보는 법을 알아보겠습니다. ERD 는 직접 종이에 그려도 되고요 무료로 온라인에서 ERD..

DI(Digital Innovation)/DataBase & SQL 뽀개기

제 3정규형 차렷

자 지난 시간까지 제1,2 정규형을 알아보았습니다. 오늘은 하… 기훈이형!!! 말고 3정규형을 알아보겠습니다. 제3정규형(3rd Normal Form) 제 2정규형을 만족하는 테이블에서 primary key 또는 composite primary key 컬럼에 종속되는 것이 아닌 하찮은(무도 박명수) 잔챙이 컬럼에 종속된 컬럼을 다른 테이블로 뺀다면 그것이 제3정규형입니다. [체육센터 테이블] 프로그램 가격 강사 출신대학 스쿼시 5000 팜하니 서울대 축구 4000 손흥민 서울대 헬스 7000 덱스 연세대 헬창과정 8000 덱스 고려대 탁구 3000 팜하니 연세대 ⬆️ 대충 제2정규화를 만든 테이블입니다. 이 테이블은 2정규형을 만족하기 때문에 partial dependency는 없습니다. 하지만 ‘출신대..

DI(Digital Innovation)/DataBase & SQL 뽀개기

2NF 완벽 이해 MASTER

[책대여내역 table] 회원아이디 책이름 날짜 회원등급 책가격 반납여부 kuk 디자인책 2월23일 우수 1000 1 kim 만화책 2월24일 일반 2000 0 park SQL책 2월25일 일반 1000 1 park 소설책 2월25일 일반 2000 0 Q1. 위 테이블에서 ‘책가격’ 컬럼은 다른 테이블로 옮기는게 좋을까염? 위 테이블에 composite primary key 는 ‘회원아이디’, ‘날짜’, ‘책이름’입니다. 다른 테이블로 빼야합니다. composite primary key 중 하나인 ‘책이름’에 종속 O composite primary key 중 하나인 ‘날짜’에 종속 X composite primary key 중 하나인 ‘회원아이디’에 종속 X 그래서 제 2정규형 만들려면 다른 테이블로 ..

달려라 국나뇽
'분류 전체보기' 카테고리의 글 목록 (7 Page)