GOORM-DEEP DIVE 백엔드 3회차 회고 DAY18

Cori1304·2025년 3월 21일
0

GOORM-DEEPDIVE

목록 보기
17/19

글을 쓰게된 배경

부트캠프에서 처음으로 java수업을 받고 있기에 기록하는게 좋다고 생각했고, 수업이 있는 날이면 매일 글을 쓰려고 합니다. 쵀대한 몰랐거나 필요하다고 생각되는 내용 위주로 기록할 예정입니다. (제가 게을러서 이러한 시도를 성공한 적이 없기에 이번 부트캠프 목표 중 1가지입니다. 할 수 있도록 화이팅!!)

mySQL

간단한 문법

SELECT

데이터를 조회할 때 사용하는 기본적인 SQL 명령어. 특정 컬럼만 선택 가능하다.
모든 컬럼을 선택할 경우 SELECT * FROM table_name; 사용

SELECT
       menu_code
	 , menu_name
     , menu_price
  FROM tbl_menu;  

ORDER BY

정렬할 때 사용하는 절로 ASC(오름차순, 기본값), DESC(내림차순) 지정 가능하다.

SELECT
       menu_code
     , menu_name
     , menu_price
  FROM tbl_menu 
 ORDER BY menu_price;

WHERE

조건을 만족하는 행(row)만 조회하도록 필터링하는 절이다. 비교 연산자 (=, !=, <, >, <=, >=) 사용 가능하고 논리 연산자 (AND, OR, NOT) 사용 가능하다.

 SELECT 
       menu_name
	 , menu_price
     , orderable_status
  FROM tbl_menu
 WHERE menu_price = 13000;
 
 SELECT
       menu_code
	 , menu_name
     , menu_price
  FROM tbl_menu
 WHERE menu_price > 20000;

DISTINCT

중복을 제거하고 고유한 값만 조회하는 키워드로 중복된 데이터를 한 번씩만 출력하게 할 수 있다.

SELECT
       DISTINCT category_code
  FROM tbl_menu
  ORDER BY category_code;

JOIN

두 개 이상의 테이블을 연결하여 데이터를 조회하는 방식
각 테이블은 공통된 colum(키)을 기반으로 결합됨.

/* 기본 사용법*/
SELECT
       a.menu_name
	 , b.category_name
  FROM tbl_menu a  
-- inner join tbl_category b ON a.category_code = b.category_code;
  JOIN tbl_category b ON a.category_code = b.category_code;
  
  /* LEFT JOIN */ 
-- 첫 번째(왼쪽)테이블의 모든 레코드와 두 번째(오른쪽)테이블에서 일치하는 레코드를 반환하는 JOIN
SELECT
       a.category_code
	 , b.menu_name
  FROM tbl_category a
  LEFT join tbl_menu b on a.category_code = b.category_code;
  
/* RIGHT JOIN */  
-- 두 번째(오른쪽) 테이블의 모든 레코드와 첫 번째(왼쪽) 테이블에서 일치하는 레코드를 반환하는 JOIN
SELECT
       a.menu_name
     , b.category_name
  FROM tbl_menu a
  RIGHT join tbl_category b on a.category_code = b.category_code;
  
/* CROSS JOIN */  
-- 두 테이블의 모든 가능한 조합을 반환하는 JOIN
SELECT
       a.menu_name
     , b.category_name
  FROM tbl_menu a
  CROSS join tbl_category b;

배운점

postgreSQL를 사용해서 프로젝트를 진행했을 때는 문법을 제대로 공부를 안 하고 필요할 때만 검색을 했다. 그래서 잘 모르고 썼는데 이제는 명어가 뜻하는 것이 무엇인지 알게 되어서 재미있었다.

profile
개발 공부 기록

0개의 댓글

관련 채용 정보