mysql -u id -p
mysql -h 상대방IP -u root -p
DB구조
<데이터베이스> - 디렉토리
└ 테이블 - 데이터 저장소
└ 행과 열
show databases; [데이터베이스 보기]
use 데이터베이스명; [데이터베이스 선택]
show tables; [선택된 데이터베이스안 테이블 보기]
desc 테이블명 [컬럼의 정의 보기]
대소문자 구분 X
SELECT 컬럼절
FROM 테이블명;
SELECT * FROM dept; : dept테이블에서 모든컬럼보기
A테이블에서 BCD칼럼을 가져오고싶다 =>
SELECT B, C, D from A
여기서 BCD칼럼값에 as를 붙히면 출력칼럼명 바꿀수있음
(as 생략가능)
B as b, C as c, D as d
result => b c d colums
select a, a*12 'a s' from B
a와 ax12된 계산된 a s 컬럼이 나옴.
>산술연산중 하나라도 null 이면 전부 null출력 주의
select 연산값 true : 1 false : 0 출력
select 컬럼 ┐
from 테이블 ┐
where 조건 [행제한] ┐ -조건절, where 절
컬럼명 비교(논리) 연산 값
select deptno, dname
-> from dept
-> where deptno = 10; //deptno 10번만 출력
두 기간 사이 검색
where a between 'date1' and 'date2';
특정 데이터 포함 검색
where a where job in('data1', 'data2');
Null 검색
where a is null;
where a is not null; //!null
Like (a 단어포함검색)
where ename like '%A' a로 끝나는
where ename like '%A%' a가 중간에 들어가는
where ename like 'A%' a로 시작하는
[_] <= 언더바는 한 글자를 대체
[%] <= 퍼센트는 앞뒤를 의미
distinct = 중복데이터 제거하고 목록화
select distinct [colums] from [table]
1. 단일 컬럼일때는 table 안에 colums 의 중복을 제거하고 목록화
2. colums의 값이 집합(복수) 일때는 각각의 데이터는 중복이 되지만
1번컬럼과 2번컬럼의 데이터의합이 중복이 되지않음.
order by 컬럼명 차순
*default
(오름차순 [asc] / 내림차순 [desc])
컬럼병이 복수일때 동순위 2차정렬이됨
select a, b, c from d order by b, c
d테이블의 b 먼저 정렬후 b 동순위로 c값을 정렬함