SQL

[데이터 다루기] SQL로 데이터 검색하기

Bordercolli 2023. 8. 24. 18:15
728x90

🐩 데이터 읽기(검색 SELECT)

SELECT  '* '또는 '컬럼'  FROM 테이블명;

SELECT 기존컬럼 AS 새로운컬럼 FROM 테이블명;

 

컬럼명 바꿔서 출력하기

출력할 때 컬럼명을 변경하지 기존 컬럼의 컬럼명을 변경하지는 않는다.

 

🐩 데이터 정렬 변경(ORDER BY)

SELECT * FROM 테이블명 ORDER BY 정렬할 기준 컬럼명 DESC;  → 내림차순 

SELECT * FROM 테이블명 ORDER BY 정렬할 기준 컬럼명 [ASC]; → 오름차순(Default)

▶ i를 보고 다 똑같으니 뒤에 숫자를 보고 내림차순으로 한다.

 

🐩 조건에 맞는 데이터만 검색(WHERE)

비교연산자: SELECT * FROM 테이블명 WHERE 컬럼<>= 값;

논리연산자: SELECT * FROM 테이블명 WHERE 컬럼<>= 값 AND / OR 컬럼<>= 값;

 

ID가 3보다 작은 레코드만 출력 ▼

ID가 3보다 작은 레코드만 출력

ID가 1보다 크고 4보다 작은 레코드만 출력 ▼

AND조건문

 

현실에 있는 데이터를 어떻게 DB에 맞추어서 변환해서 잘 저장하느냐 그리고 그 중에서 어떤 데이터를 검색할 수 있는 그런 부분에 대한 감을 익혀야 한다.

 

데이터 베이스는 관계형 데이터베이스가 있는데, 거기에는 테이블이란게 있고, 컬럼을 넣는다. 이런 것들을 잘 이해한다.

🐩 일부 데이터를 찾고 싶을 때(LIKE)

 내가 일부분이 들어간 데이터를 찾고 싶을 때

어떻게 사용???

 

SELECT 컬럼1, 컬럼2... FROM 테이블 WHERE 컬럼 LIKE '%또는 _';

%는 wild character, _는 한 글자

name중에 '3'이 들어간 데이터를 찾아보겠다.

'Lapter'로 시작하는 모델 타입을 찾아보자.

논리연산과 결합하여 사용하기.

id가 3이하이면서 Lapter가 들어가는 레코드 찾기

🐩 일부 데이터만 보고싶을때 (LIMIT)

SELECT 컬럼 FROM 테이블 LIMIT 숫자;

중간 데이터가 보고싶을때

 

 

🐩 조건조합(WHERE, ORDER BY, LIMIT)

※ 순서: WHERE > ORDER BY > LIMIT

 

🐩 문제

1. model_num이 12으로 시작하는 ROW(로우) 검색하기

 

2. name이 i9인 ROW 검색하기

 

3. model_type이 Lapter lake 인 ROW를 1개만 검색하기.(LIMIT 사용)

우리가 구글링을 할 때 키워드를 검색하면 관련된 내용이 쭈르륵 다 나오는데 이건 

이거를 한 것이다.

 

정리: SELECT > FROM > WHERE > ORDER BY > LIMIT 이 순서대로 수행을 해야한다.