분류 전체보기 31

9. MySQL 서브쿼리 Sub Query 사용하기

하나의 SQL문 안에 포함되어 있는 또 다른 SQL문 Sub Query (= 쿼리 내부에 포함되어 있는 SELETE 문)※ 서브쿼리는 메인쿼리의 컬럼을 사용 가능 / 메인쿼리는 서브쿼리의 컬럼 사용 불가능 -- 페이지수가 가장 긴 책의, 제목, 작가이름 페이지수 를 보여주세요(예시) -- 해결책 1 : 정렬해서 해결SELECT title,author_lname,pagesfrom booksorder by pages desclimit 1; -- 해결책 2 : pages 의 max 값을 구해서, sub Query 해서 해결 한다.SELECT *FROM books; --------------  Sub Query 사용 --------------------- 1. 페이지 컬럼의 맥스값을 찾고 -> 634 (예시) ..

MySQL 2024.11.29

8. MySQL 데이터 집계함수 count, sum, avg, max, min

갯수를 세는 함수 count()값을 모두 더해주는 함수 sum()평균을 구하는 함수 avg()최대값을 구하는 함수 max()최소값을 구하는 함수 min() ------------------------------------------------------------------------------------- ※  갯수를 세는 함수 count() -- 데이터의 갯수를 세는 함수 : count() -- books 테이블에 데이터가 들어있다. 책은 총 몇권인가? SELECT COUNT( DISTINCT author_lname ) as countFROM books; -- 책 제목에 the 가 들어간 책은 몇권 입니다.SELECT count(*)FROM bookswhere title like '%the%';  ※..

MySQL 2024.11.28

7. MySQL 데이터를 가공하는 키워드 distinct, order by, limit, like, group by

MySQL Workbench 데이터 가공 데이터를 유니크하게 만드는(중복제거) distinct데이터를 정렬하는 order by데이터를 끊어서 가져오는 limit 와 offset문자열 안에 원하는 문자가 들어있는지 검색하는 lik데이터를 집계하는 group by ※  distinct(중복제거 키워드)SELECT DISTINCT author_lnamefrom books;  ※  데이터를 정렬하는 order by -- author_lname 으로 정렬해서 가져오기 - 오름차순 정렬SELECT *from booksorder by author_lname; -- ASC 오름차순(생략시 오름차순으로 적용) SELECT *from booksorder by author_lname ASC; -- DESC 내림차순SELEC..

MySQL 2024.11.28

6. MySQL 문자열 함수

문자열을 합치는 concat()-- fname 이 분리되어 있는데,-- 합쳐서 full_name 으로 가져오고 싶다. -- 문자열을 합치는 함수 : concat() SELECT * , CONCAT(author_fname,author_lname)FROM books; -- 중간 사이 ,' ', 공백 시 띄어쓰기SELECT * , CONCAT(author_fname,' ',author_lname)FROM books;  SELECT * , CONCAT(author_fname,' ',author_lname) as full_nameFROM books; -- 컬럼 하나로, "책제목 : 풀네임" 형식으로 조회하고 싶다. title_name-- 예) The Ma,esake : Jhumpa Lahiri-- Norse My..

MySQL 2024.11.27

5. MySQL 테이블 데이터 CRUD(Create, Read, Update, Delete)

Create > insert intoRead > selectUpdate > updateDelete > delete Create > insert into (데이터 추가)-- 1개의 데이터 추가 INSERT INTO customer(name,email,age)valuse('김수민','tnals@gmail.com',22); -- 여러 데이터 추가 INSERT INTO customer(name,email,age)valuse('김수민','tnals@gmail.com',22),('최보민','qhals@gmail.com',25),('박민수','dnjstn@gmail.com',28),('이영한','dudgks@gmail.com'32),('조영훈','dudgns@gmail.com'33),('김재성','wotjd@gmai..

MySQL 2024.11.27

4. MySQL 테이블에 데이터 insert 하기 a. 하나저장,여러개 저장, Not Null 이란? Default 란?

Not Null 이란?NOT NULL 제약 조건을 설정하면, 해당 필드는 NULL 값을 저장할 수 없습니다.즉, 이 제약 조건이 설정된 필드는 무조건 데이터를 가지고 있어야 합니다. Default 란?기본값은 사용자가 변경하지 않는 한 자동으로 적용되는 사전 설정 값   INSERT INTO 테이블 이름 (열1, 열2, ...)  VALUE (값1, 값2 , ….)   use test_001; 1개 저장 시INSERT INTO customer(name,email,age)                       테이블 이름 열1  , 열 ,   열3values ("홍길동","abc@gmail.com",20); / Ctrl+Enter 로 실행                  값1   ,           값2..

MySQL 2024.11.26

3. MySQL 테이블의 컬럼 설정 a. Not Null, auto_increment, Primary Key, Unique

기본키(PRIMARY Key) -값 중복을 혀용하지 않는다.-NULL값을 허용하지 않는다. -테이블에서 한 개만 생성 가능하다. 유니크키(UNIQUE Key,) -값 중복을 혀용하지 않는다. -NULL값을 허용한다. -테이블에서 여러 개 생성 가능하다. 테이블은 오직 하나의 기본키(PK)를 가질 수 있다. 이는 여러 개의 기본키는 생성할 수 없다는 것을 의미한다. Name : idNOT NULL로 컬럼을 정의하면, 데이터 입력 시에 필수로 값이 들어가야 하는 것을 의미함auto_increment : 데이터베이스 시스템에서 자동으로 순차적인 번호를 생성해주는 기능 Constraints 선택Create new Constraints -> Primary Key 선택(테이블 1개만 생성 가능) -> Colunm ..

MySQL 2024.11.26

2. MySQL 테이블에 하나의 데이터 넣기 - insert into

생성한 테이블 name 설정(예:customer) column 마우스 우측 클릭(단축키 alt+insert) Create new Column 클릭  MySQL data type1) 정수 유형BIT(M)비트값 타입. 즉, 0과 1로 구성되는 binary 값을 저장한다.(M : 1~64, 생략 시 기본값은 1 로 설정)BOOL0은 false, 0이 아닌 값은 true 로 간주하는 논리형 데이터ENUM(Y,N) 또는 TINYINT(1) 로 대체하여 사용하는 것을 권장TINYINT(M)부호 있는 수는 -128 ~ 127부호 없는 수는 0 ~ 225 까지 표현 (1바이트)SMALLINT(M)부호 있는 수는 -32768 ~ 32767부호 없는 수는 0 ~ 65535 까지 표현 (2바이트)MEDIUMINT(M)부호 ..

MySQL 2024.11.26

2. DBeaver 이용해서 터널링 설정하고 RDS에 접속하기

PuTTY 설정PuTTY 실행Session 카테고리Host Name(or ip address)에 퍼블릭 IPv4 주소를 입력(port는 22입력) SSH인증Connertion 카테고리SSH ->Auth 메뉴 -> Credentials 카테고리로 이동Private key file authentication에 Browse클릭 -> EC2 인스턴스에 대한 .ppk 파일 선택 Other authentication-related options(기타 인증 관련 옵션) 메뉴Allow agebt forwarding 옵션을 체크 SSH 터널 설정Connection->SSH->Tunnels 카테고리로 이동Source port에 사용하지 않는 로컬포트번호 (예: 3306) 입력Destination :3306 입력(예:db-..

AWS 2024.11.26