접속자 : 6 (회원 0)  전체순위 출근기록  오늘 238 어제 251 최대 6,407 전체 1,951,547  
영어학습사전 영학사커뮤니티
휴게실영어Q&A영.학.사.게시판영어공부합시다잡학다식
06 그룹 아무거나공부아무거나기록상품학백과
  영학사커뮤니티 LOGIN
  
  
  ID저장  자동로그인
회원가입 아이디/비밀번호 찾기
아무거나공부
아무거나기록
상품학백과
 아무거나기록 베스트 10
 
작성일 : 11-05-30 15:14
BNF로 표기한 SQL문법
 글쓴이 : 투에니원
조회 : 8,936  
   http://wwwi.tistory.com/78 [1095]

○ 테이블 정의
<테이블 정의> ::= create table <테이블명> ( <테이블요소> [ { , <테이블요소> } ... ] )
<테이블 요소> ::= <속성정의> | <테이블 제약정의>
<속성 정의> ::= <컬럼명> <데이터형> [ <컬럼제약> ]
<컬럼 제약> ::= not null [ unique | primary key ]
<테이블 제약 정의> ::= unique | primary key ( <컬럼명> [ { , <컬럼명> } ... ] )
<데이터형> 정의는 생략. 다음과 같이 사용함
char(size)
varchar(size)
number(size)
date
number(size,d)

○ 질의
<select> ::= select [ all | distinct ] [ <수식> [ { , <수식> } ... ] | * ] <from 구> [<where 구> ] [ <group 구> ] [ <having 구> ] [ <order 구>]
<from 구> ::= from <테이블 지정> [ { , <테이블 지정> } ... ]
<테이블 지정> ::= <테이블명> [ join <테이블명> on <결합 조건> ]
<결합조건> ::= <컬럼 지정> = <컬럼 지정>
<where 구> ::= where <검색조건>
<group 구> ::= group by <컬럼 지정> [ asc | desc ]
<having 구> ::= having <검색조건>
<order 구> ::= order by <컬럼 지정> [ asc | desc ] [ { , <컬럼 지정> [ asc | desc ] } ... ]
<수식> ::= <항> | <수식> + <항> | <수식> + <항>
<항> ::= <인자> | <항> * <인자> | <항> / <인자>
<인자> ::= [ + | - ] <1차인자>
<1차인자> ::= <값지정> | <컬럼 지정> | <집합함수 지정> | ( <수식> )
<속성 지정> ::= [ <테이블명> . ] <컬럼 명>
<집합함수지정> ::= count(*) | <distinct 집합함수> | <all 집합함수>
<distinct 집합함수> ::= { avg | max | min | sum | count } ( distinct <컬럼 명> )
<all 집합함수> ::= { avg | max | min | sum } ( [ all ]<컬럼 명> )
<검색조건> ::= <BOOL항> | <검색조건> or <BOOL항>
<BOOL항> ::= <BOOL인자> | <BOOL항> and <BOOL항>
<BOOL인자> ::= [ not ] <BOOL1차인자>
<BOOL1차인자> ::= <술어> | ( <검색조건> )
<술어> ::= <비교술어> | <between 술어> | <in 술어> | <like 술어> | <null 술어> | <한정술어> | <exists 술어>
<비교술어> ::= <수식> <비교연산자> { <수식> | <부질의> }
<비교연산자> ::= <> | = | < | > | <= | >=
<between 술어> ::= <수식> [ not ] between <수식> and <식>
<in 술어> ::= <수식> [ not ] in { <한정값 리스트} | <부질의> }
<한정값 리스트> ::= <값지정> [ { , <값지정> } ... ]
<like 술어> ::= <속성 지정> [ not ] like <패턴>
<패턴> ::= <값지정>
<null 술어> ::= <컬럼 지정> is [ not ] null
<한정술어> ::= <수식> <비교연산자> <한정자> <부질의>
<한정자> ::= all | <some 술어>
<some 술어> ::= some | any
<exists 술어> ::= exists <부질의>
 
○ 부질의
<질의지정> ::= select [ all | distinct ]  { <수식> | * }  <from 구>  [ <where 구> ]  [ <group 구> ]  [ <having 구> ]

○ 복수질의
<질의 지정> ::= select [ all | distinct ] [ <수식> [ { , <수식> } ... ] | * ] <from 구> [ <where 구> ] [ <group 구> ] [ <having 구> ] [ <order 구> ]

○ insert문
<insert문> ::= insert into <테이블명> [ { <삽입 컬럼 리스트>} ] { values ( <삽입값 리스트> | <질의 지정> }
<삽입 컬럼 리스트> ::= <컬럼명> [ { , <컬럼명> } ...
<컬럼값 리스트> ::= <추가값> [ { , <추가값> } ...
<추가값> ::= <값지정> | null

○ update문
< update문 > ::= update <테이블명> set <설정구:검색> [ { , <설정구:검색> } ... ] [ where <검색조건> ]
<설정구:검색> ::= <대상 컬럼:검색> = { <수식> | null }
<대상 컬럼:검색> ::= <컬럼명>
 
○ delete문
< delete문 > ::= delete from <테이블명> [ where <검색조건> ]

☞ 기호의 의미
::= : 정의
| : 또는
{} : 0번 이상의 반복
[] : 선택사항(없어도 됨)


 
 

 
Total 21
번호 제   목 글쓴이 날짜 조회
21 BNF로 표기한 SQL문법 투에니원 05-30 8937
20 업무성과를 저해하는 13무 풍운 04-05 4856
19 성과 몰입을 가져오는 중요한 요소 Q12 풍운 04-05 5240
18 python에서 oracle 연동 풍운 11-26 12796
17 tar.gz 파일 풀기 풍운 11-26 8759
16 구글 검색결과에 순위 번호 매겨서 보기 풍운 11-16 12224
15 이미지로 아이콘 만들기 풍운 10-08 14726
14 세계시차표, Word Time Map (3) 풍운 10-02 14037
13    세계 표준시간대, World Time Zone 풍운 10-31 34988
12 ModSecurity를 이용한 과다접속 감지 및 IP 차단 풍운 10-01 12896
11 오픈마켓 판매수수료 사례 풍운 08-18 13567
10 처음 해외쇼핑 할 때 알아야 할 7가지[펌] 풍운 08-17 9785
9 전자금융업 등록현황(2009.7.13) 풍운 07-28 23826
8 Google wave(구글 웨이브) (9) 풍운 06-22 24469
7 빙(Bing): 마이크로소프트의 새로운 검색엔진 풍운 06-22 25353
 
 
12
and or
영어학습사전으로 가기
dic.impact.pe.kr