작성순서 ( 없으면 생략)

select 열이름 or *(전체)

from 테이블이름

where 조건식

group by 열이름

having 그룹의 조건

order by 정렬할 기준열이름

limit 숫자 (결과의 개수제한)

 

 

 

해당 디비를 클릭해놓고 있을때는

DB명 입력부분 생략가능

(진하게 표시되면 이미 shop_db 데이터베이스에 적용된다는 의미)

                                

or

데이터베이스 선택

use 데이터베이스명;

 

 

조회하기(select)

SELECT * FROM DB명.테이블명;

 

 

테이블에 데이터 입력하기(insert)

insert into DB명.테이블명 (`열이름1`, `열이름12`..) values('열1의 내용', '열2의 내용'...');

insert into DB명.테이블명 values('열1의 내용', '열2의 내용'...');

 

 

수정하기(Update)

update 디비명.테이블명

set member_name = '수정할내용'

where 조건열= '조건값';     

 

 

삭제하기(Delete)

DELETE FROM 디비명.테이블명

WHERE (조건열 = '조건값');

 

 

테이블이름 변경

ALTER TABLE 기존테이블명
RENAME TO  변경할테이블명;

 


인덱스생성

create index 인덱스명 on 테이블명(인덱스열);

 

뷰생성

create view 바로가기뷰이름 as select * from member

create view 바로가기뷰이름 as 원본 sql문

 

스토어드 프로시저(여러개의 SQL문을 하나로 묶어 사용가능,     연산식, 조건문, 반복문 등 사용가능)

delimiter //
create procedure 프로시저명()
begin
select * from member where member_name = '아이유';         //예시 sql문1
select * from product where product_name = '삼각김밥';        //예시 sql문2
end //
delimiter ;


서브쿼리

select 출력할열 or *
from 조회할테이블
where height > (select 조회할열 or *
                          from 조회할테이블
                           where mem_name = '에이핑크');  //조건

 


 

정렬

select 출력할열 or *
from 조회할테이블
order by 정렬할 열 (desc)          //기본 오름차순(asc) , desc  내림차순

 

 

결과 제한 Limit 

select 출력할열 or *
from 조회할테이블
order by 정렬할열 asc
limit 0, 3           ( start 번째 ~ end번째까지만)

 

 

중복제거

select distinct 출력할열

from 조회할테이블

 

 

Groub by 그룹묶기

select 출력할열, sum(합계하여 출력할열)
from 조회할테이블
group by 그룹으로 묵을열
order by 정렬기준열

 

Groub by 그룹묶기 (having절은 꼭 group by절다음에 와야하며, 집계함수의 조건을 거는 것.)

select mem_id, sum(price*amount)
from buy
group by mem_id
having sum(price*amount) > 1000

 

 

auto_increment 현재값 확인?

   select last_insert_id();

 

 

auto_increment를 100부터 시작하고 싶다면?

   alther table hongong2 auto_increment=100;

 

auto_increment를 500부터 시작하여, 2씩 증가시키고 싶다면 ?

   set @@auto_increment_increment = 2;

 

insert 시 한번에 여러개 입력

   insert into 테이블 values ( 열내용1, 열내용2, 열내용3), (열내용1, 열내용2, 열내용3);

 

1번테이블의 데이터를 원하는것만 추출하여,   2번테이블에 data 넣기

insert into ~ select

    insert into 2번테이블명
                   select 원하는열1, 원하는열2
                    from 1번테이블명;

 

 

Update ( 수정 )

update 테이블명
    set 열이름 = '값'   // 셋팅할 내용             , 열이름2 = 값2 로 여러개를 세팅할수도있다
    where 열이름 = '값';  // 찾을 조건

 

 

Delete ( 삭제 )

delete from 테이블명 where 조건

 

테이블 삭제

   drop table 테이블명

 

테이블 내 데이터 모두삭제

   truncate table 테이블명

 

테이블 구조확인

 desc 테이블명;

 

 

a1 테이블만 복사하여 생성

create table b1 select * from a1 where false;

 

 

a1 테이블 + 데이터 복사하여 생성
create table b1 select * from a1;  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

혼자공부하는MySQL 도서참조 ( 도서예제파일첨부 )

 

 

 

 

 

 

'Mysql' 카테고리의 다른 글

MySQL 설치  (0) 2023.03.21
MySQL 기본2 (데이터베이스 핵심개체(객체)  (0) 2023.01.24
MySQL 기본1(조회,수정,삭제,등록)  (0) 2023.01.23
MySQL 명령문 (2) 제약조건  (0) 2023.01.22
MySql 명령문  (0) 2023.01.20

+ Recent posts