TIL) SQL & Database 1

oatraspberry·2023년 1월 7일
post-thumbnail

DBeaver

Databases - 폴더
Tables - 파일

처음에 테이블 만들고 저장했을 때 오류 뜨는 이유
-> Table이 어떻게 생겼는지, 어떤 컬럼이 들어갈지 미리 작성해야 함.
Column - 세로줄, Row - 가로줄

새로운 Column을 만들기 위해서는 우클릭 후 Create New Column 선택

Column의 Data type을 잘 선택해야 한다.

숫자 Data type

INT - 숫자를 저장하고 싶으면 선택.

문자 Data type

CHAR - 0 ~ 255자.
varchar() - 0 ~ 65535자. 문자를 저장하고 싶을 때 쓰는 타입, 뒤에 괄호에는 숫자 길이를 적는다.
TEXT - 0 ~ 65535자.
TINYTEXT - 0 ~ 255자
MEDIUMTEXT - 0 ~ 1600만자.
LONGTEXT - 0 ~ 42억자.

날짜/시간 Data type

DATE - 1000년 ~ 9999년. YYYY-MM-DD 형식
TIME - -839 ~ +838시간. HH:MM:SS 형식
DATETIME - 1000년 ~ 9999년. YYYY-MM-DD HH:MM:SS 형식(주로 사용함)
TIMESTAMP - 1970년 ~ 2038년. YYYY-MM-DD HH:MM:SS 형식


Data 탭을 선택해서 사진에 선택되어 있는 버튼을 눌러 새로운 행을 추가한다.

SQL 문법

  • 테이블의 모든 데이터 출력하는 법 - SELECT * FROM 테이블명
  • 테이블의 특정 컬럼만 출력하는 법 - SELECT 컬럼명 FROM 테이블명
    -> 두가지 선택하고 싶다면 SELECT 컬럼명, 컬럼명 FROM 테이블명
  • 출력한 데이터 정렬하는 법
  1. ORDER BY 컬럼명
  2. ORDER BY 컬럼명 ASC/DESC ASC - 오름차순, DESC - 내림차순
  3. ORDER BY 컬럼명 ASC/DESC, 컬럼명 ASC/DESC

조건식

  • 원하는 행만 필터링하는 법 -> WHERE 컬럼명='값'
  • 조건식에 들어가는 비교연산자 - =, !=, >, <, >=, <= 사용가능하다.
  • 문자타입의 자료를 표현할 때는 '문자', 숫자타입의 자료를 표현할 때는 숫자
  • A~B 사이의 값을 필터링하고 싶으면 -> 컬럼명 BETWEEN A AND B
  • Q. 조건을 여러개 넣어서 필터링하려면? A. AND / OR 써서 조건식 붙인다.
SELECT * FROM product
WHERE 가격 = 5000 AND 카테고리 = '가구';
// 한줄 끝나면 세미콜론 꼭 붙여야 한다.
SELECT * FROM product
WHERE (카테고리 = '음료' OR 카테고리 = '디저트') AND 가격 = 5000;
// 괄호 안에 있는 조건 먼저 읽어서 필터링해준다.
  • NOT -> 해당 조건식에 해당하지 않는 결과만 나타낸다.
  • OR, IN()
<!-- OR -->
SELECT * FROM product
WHERE 카테고리 = '음료' OR 카테고리='디저트' OR 카테고리= 'MD';

<!-- IN() -->
SELECT * FROM product
WHERE 카테고리 IN ('음료', '디저트', 'MD');
  • LIKE %단어%, LIKE _단어_
    %는 아무문자(0자~무한), _는 아무문자 1글자
    -> VARCHAR() 컬럼에 주로 사용한다.
<!-- % -->
SELECT * FROM product
WHERE 카테고리 LIKE '%디저%';

<!-- _ -->
SELECT * FROM product
WHERE 카테고리 LIKE '디저_';

코드 짜기 전에 무슨 데이터를 출력하고 싶은지 한글로 정리하기.

profile
개발자가 될테야

0개의 댓글