데이터는 단 1%의 결점도 없어야 합니다. 그래서 데이터를 관리하는 게 어렵습니다.
데이터베이스에 접근하고 조작하기 위한 표준 언어
엑셀에서 데이터를 분석하는 것과 비슷한데 더 많은, 더 쉽게, 더 빠르게!
하나이상의 테이블로 이루어지며 서로 연결된 데이터를 가지고 있음
각각의 표를 테이블이라고 지칭하고 하늘색선으로 연결되어있음
desc
: 특정 테이블에 어떤 칼럼이 있는지 구조가 무엇인지 조회하는 명령어
ex) desc 테이블명;
select
: 데이터 조회하기(검색, 필터)
ex) SELECT [칼럼명 or 표현식] FROM [테이블명, 뷰명]
ex) SELECT 칼럼명
*
: 전체 데이터 검색distinct
+ 컬럼 : 뚜렷한, 분명함 : 테이블의 중복을 제거하고 보여준다.select title, author //*(all) 를 쓰면 전체를 가져옴
//명령 //검색할 컬럼
from book;
//book 테이블
중복을 제거하고 싶다면
SELECT DISTINCT title, author //셀렉트 디스팅트를 셀렉트 중복제거~ 라고 생각하며 읽으심
FROM book;
from
~로 부터 : FROM 테이블명;
where
조건 : + 조건
검색하고자 하는 데이터의 조건을 설정 할 수있는 WHERE (조건은~)
select는 + 컬럼명 from ⇒ select + title(제목)
where는 + 데이터(레코드) ⇒ where + 돈키호테(데이터)
SELECT *
//명령
FROM book
//테이블
WHERE title = '돈키호테';
//조건
모든 컬럼을 검색하는데 book 테이블에서 데이터를 가져와 조건은 제목이 돈키호테야
SELECT *
FROM score
WHERE korea >=90 or math > 80;
#score 테이블에서 수학(math) 성적이 80과 90 사이의 값검색
SELECT *
FROM score
WHERE math BETWEEN 80 AND 90;
//나이대
between 20 and 29 //20대
between 30 and 39 //30대
//날짜
between '2020-03-01' and '2020-03-31';
-- 해당하는 작가가 쓴 책만 골라서 출력합니다.
select *
from book
where
author in ('William Shakespeare', 'John Ronald Reuel Tolkien', 'Joanne Kathleen Rowling') ;
#컬럼명 in (키워드) 꼭 괄호를 넣어야함!
#북이라는 테이블에서 모든 정보를 불러오는데 조건이 있어
#작가 컬럼에서 해당 이름이 있는 3명의 작가의 것만 보여주세요.
employees
테이블에서 복잡한 조건을 만족하는 직원을 검색해 봅시다.
first_name
이 'Chirstian' 또는 'Georgi' 이다.gender
가 남자이다.hire_date
가 '1986-06-26' 이 아니다.select *
from employees
where
gender = 'M'
and (first_name = 'Chirstian'
or first_name = 'Georgi')
and hire_date != '1986-06-26';