SQL 개요, 주요 문법 - SELECT

1867 단어 selectsqlselect

컴퓨터활용능력 1급 자격증을 따기 위해서 꼭 넘어야 하는 산 중 하나인 Access, 그 중에서 난이도로 치면 제일 어려운 부분이 바로 SQL문이었습니다.

SELECT * from 파일 where.....

컴활을 따기 위해서 외웠던 문구였지만 이 것이 도대체 저의 컴퓨터 사무직에서 어떻게 쓰일지도 몰랐고 필요가 없는 문구구나 하고 지나갔던 것 같습니다.

그리고 지금 서버 구축 과정에서 다시 보니...이걸 컴활에서 배우다니! 라는 느낌이 들고 있습니다. :)

SQL

Structured Query Language

데이터를 웹이나 앱에서 쓰기 위해서는 기본적으로 데이터가 필요하겠죠?
그렇다면 데이터들을 저장하고 있는 데이터의 집합, 데이터베이스가 필요합니다.

데이터베이스에서 데이터를 저장하거나 추가하거나 조회하거나...
서버에서 데이터를 사용하기 위해서는 반드시 필요한 언어입니다.

주요 특징

1) sql은 자바스크립트와 달리 대,소문자를 구분하지 않는다.
persons 와 PERSONS는 같은 문법인 것이다.
하지만 되도록이면 변수 이외에 문법을 사용할 때는 대문자를 쓰는 것이 협업을 위해서는 좋을 것이다.

2) 문장 맨 뒤에 ;을 붙여줘야 문장이 끝난다.

3) 두 요소가 같음을 나타내는 것은 =이다. (자바스크립트에서는 ===)

주요 문법

select => 데이터 조작어(DML)

해당 데이터를 검색하는 데에 쓰인다.

전체 문장은

SELECT (* / 테이블 열이름 / DISTINCT ) 
FROM 테이블 이름
WHERE 조건
GROUP BY 속성이름
HAVING 검색조건
ORDER BY 속성이름/ASC?DECS

1) SELECT * / 테이블 열이름 / DISTINCT

SELECT는 검색하는 기능을 가진다.

*은 전체 요소 검색,
테이블 열 이름을 사용하여 검색할 데이터를 한정할 수 있다.
만약 중복데이터는 제외하고 싶으면 DISTINCT를 추가로 작성한다.

2) FROM 테이블 이름
해당 데이터베이스에서 찾고자 하는 테이블 영역을 작성해준다.

3) WHERE 조건
이름이 김덕만인 사람만 찾도록 하거나 김으로 시작하는 사람을 찾고 싶을 때 사용하는 조건문이다.

WHERE username = '김덕만'
or
WHERE username LIKE '김*'

4) GROUP BY 속성이름

특정 이름으로 그룹을 나누고 싶을 때 사용하는 속성이다.

5) HAVING 검색조건

WHERE과 비슷해보이지만 WHERE은 단순 열이름을 한정해주었다면
HAVING은 함수 식을 통해서 그룹 조건을 한정해줄 수 있다.

HAVING count(customer) >= 4

6) ORDER BY 속성이름/ASC/DESC

속성을 정렬해줄 때 사용하는 속성이다
해당 속성을 기준으로 기본적으로는 오름차순 정렬을 해준다.
속성이름 뒤에 DESC를 작성한다면 내림차순 정렬을 해준다.

ORDER BY score DESC

좋은 웹페이지 즐겨찾기