저번 게시글에서 sampleDB와 SELECT 예약어(SELECT, FROM, * 등의 구문을 예약어라고 합니다)를 이용해 간단한 테이블을 불러오고, 테이블에 대한 정보를 확인하는 법을 살펴보았습니다.
Sample DB 설정 방법은 다음 링크를 참조하세요. (https://m-datastudy.tistory.com/5)
이번에는 SELECT~FROM 예약어를 더 활용해보겠습니다. 저번 게시물 (https://m-datastudy.tistory.com/6?category=856604)를 보신 분들은 이제 테이블의 컬럼을 지정해서 불러올 수 있습니다. 그렇다면 컬럼 내에서 원하는 데이터를 선택하려면 어떻게 해야 할까요?
1. WHERE 구에서 레코드(row) 지정하기.
다음은 customer라는 테이블에서 customerNumber, customerName, city 컬럼을 불러오고, 그 중 customerNumber가 200 이하인 고객의 정보만 불러오는 명령입니다.
다음과 같이 WHERE 구는 컬럼에 조건을 설정해 특정 데이터만을 불러 올 수 있게 해줍니다. WHERE 구를 사용하기 위해서는 먼저 알아야 하는 것이 데이터의 자료형과 연산자 입니다.
2. 데이터의 자료형과 연산자.
일상생활에선 글을 쓸 때 한 페이지에 숫자이든, 글자이든 그저 손으로 적으면 됩니다. 하지만 컴퓨터는 이런 작업을 할 수 없습니다. 한 페이지마다 숫자를 사용할지, 글자를 사용할지, 숫자나 글자를 몇개 넣을지, 아니면 숫자나 글자를 같이 사용할지 등을 따로 정한 뒤에 써야합니다. 가장 많이 사용되는 자료형은 다음과 같습니다.
저번 게시글에서 desc 명령어를 통해 테이블의 구조를 살펴보았습니다. 그때 이미 int와 varchar는 본 적이 있습니다. char와 varchar의 차이는 char는 정확히 입력한 용량만큼 글자가 들어가야합니다. 더 적거나 많아도 안됩니다. varchar는 이러한 제약으로부터 자유롭습니다. 대신 char보다 컴퓨터의 처리속도를 더 많이 깎아먹게 됩니다.
다음은 비교연산자입니다. 이러한 비교연산자들은 다른 코딩 프로그램에서도 거의 같게 사용됩니다.
테이블이나 컬럼의 자료형이 문자형일 때는 =, <, >, <=, >= 연산자는 사용할 수 없음에 유의해주세요.
3. (추가) 출력 레코드의 제한. LIMIT ~ OFFSET ~
LMIT ~ OFFSET ~ 구문을 이용해 출력할 레코드의 수를 조정할 수 있습니다.
LIMIT은 출력할 레코드의 개수를 지정하는 것입니다.
OFFSET은 어느 레코드부터 개수를 지정할지 정하는 것입니다.
'SQL > mySQL' 카테고리의 다른 글
[mySQL] substring 함수, 그 외의 함수. (0) | 2020.02.05 |
---|---|
[mySQL] 집계함수: COUNT, SUM, AVG, GROUP BY (0) | 2020.02.04 |
[mySQL] SELECT - FROM 구문을 이용해 데이터 불러오기 (0) | 2019.12.04 |
[mySQL] 학습용 DB구축하기 (0) | 2019.12.04 |
[mySQL] Windows 10 mySQL server 설치 (0) | 2019.12.04 |