[MySQL] 데이터베이스 시작하기

Haeun Noh·2022년 9월 18일
0

MySQL

목록 보기
1/2
post-thumbnail

0905


전공심화동아리에서 데이터베이스를 배우기 위해 MySQL을 배우기 시작했다.

그 준비 과정으로 workbench 설치 완료!



데이터베이스

: 데이터를 등록하고, 수정하고, 삭제하고, 조회하고..


데이터베이스에는 CRUD (Create Read Update Delete)가 있다.

MySQL에 데이터를 넣어두고 다른 사람이 데이터를 볼 수 있게끔 하는 것이라고 하는데, 쉽게 말해 데이터베이스란 데이터를 보관할 수 있는 하나의 중앙 서버를 만드는 것이다.


데이터베이스를 쓰는 이유

모든 프로그램들이 같은 데이터를 공유할 수 있게 만드는 시스템이기 때문에
같은 데이터를 공유할 수 있다는 장점이 있다.



SQL

: 데이터 베이스를 조작하는 프로그래밍(구조적 질의) 언어
: DB 구조에 대한 언어

SQL에는 DDL, DCL, DML 등이 있지만, 내 머릿속 용량과 수업시간은 한계가 있기 때문에 오늘은 DML만 배우기 시작했다.


DML

: Data Manipulation Language
Manipulation 은 내 마음대로 주무르는 느낌

데이터를 CRUD 만들고, 읽고, 수정하고 제거할 수 있는 것이 DML 언어이다.



자, 그럼 근본적인 질문을 해보자.

왜 프로그래밍 언어는 이렇게 생긴 것인가?

이것은 영어권 문화에서 만들었기 때문이다.


나는 치킨을 좋아한다. - 한국어 일본어는 끝에 동사가 나옴

He loves you - 영어는 동사가 먼저, 말하고자 하는 목표가 가장 먼저 나옴

그래서 SQL도 영어 문화권의 영향을 받았기 때문에
SELECT(데이터 조회)와 같은, 핵심이 먼저 나오는 것이다.

기본 문법 알기

  • * : 모든 컬럼을 다 보여줘
  • FROM : 어떤 테이블의

만약 SELECT city, id, citycitycity 로 하면 두 개의 열만 가지겠다는 뜻이다.
SELECT * 하면 모든 것을 다 보여줘라는 뜻이다.


  • <> : 서로 다르다.
  • = : 같다.
  • AND : 자바의 &&
  • OR : 자바의 ||

여기까지 보았을 때

"어? 뭔가 MySQL의 문법이 사람 언어와 비슷한데?"

라고 생각했다면 그게 맞다.

위에서 알 수 있듯이 SQL은 사람 언어에 친화적이다.
반대로 Java C언어는 컴퓨터 친화적이다.


  • ASC : 오름차순
  • DESC : 역순

MySQL 코딩테스트 풀어보기

이제 기본적인 문법을 알았으니 코딩테스트로 MySQL의 기본 문법을 다루는 기본적인 방법을 익혀보자.


모든 레코드 조회하기

SELECT *
FROM ANIMAL_INS

ANIMAL_INS 테이블의 모든 자료를 조회하겠다는 의미이다.

여기서 테이블의 이름은 소문자로 쳐도 상관없다.


역순 정렬하기

SELECT NAME, DATETIME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID DESC; # ASC 오름차순 DESC 내림차순

ANIMAL_INS 테이블의 NAME, DATETIME 데이터를 DESC 내림차순으로 정렬한다.


아픈 동물 찾기

SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE INTAKE_CONDITION = "Sick"
ORDER BY ANIMAL_ID, NAME;

ANIMAL_INS 테이블에서 ANIMAL_ID, NAME 데이터를
INTAKE_CONDITION"Sick"인 경우의 데이터만 조회한다.


어린 동물 찾기

SELECT ANIMAL_ID, NAME

FROM ANIMAL_INS

WHERE INTAKE_CONDITION <> "Aged"

ORDER BY ANIMAL_ID ASC;

ANIMAL_INS 테이블에서 ANIMAL_ID, NAME 데이터를 오름차순 정렬한 것의 INTAKE_CONDITIONAged가 아닌 경우의 데이터만 조회한다.



profile
Tistory로 옮기게 되었습니다. @haeunnohh

0개의 댓글