https://velog.io/@wongi-kim/HTML-기초를-하기전에
저번에 여기서 잡담하면서 최종합류 되면 계속 이어진다고 얘기했는데
24.04.19 기준으로 최종합류 되었다.
그래서 오늘 부터 TIL을 다시? 쓰게되었는데 주제는...
이번 포스팅의 주제는 SQL이다. (part.1)
- SQL : 데이터베이스와 대화 하기 위한 언어
라고한다. Java나 Python처럼 '언어'라는 점이다.
그렇다면 SQL을 훑어만 봐도 보이는 Query는 무엇일까??
- Query는 데이터베이스에서 원하는 데이터를 검색하거나 조작하기 위한 도구
- 특정 조건을 만족하는 기록을 찾거나 데이터를 업데이트, 삭제하는 등의 작업을 수행하는 것
이게 무슨뜻이냐? 다른 언어로 예를 들어 설명하면 아래와 같다.
- 우리가 Java나 Python에서 원하는 결과를 얻기 위해 제어문(반복문, 조건문 등)을 사용하여 원하는 데이터를 처리하거나 원하는 작업을 수행하는 것
원하는 결과를 얻기위해 필요한 조건을 명시하고 작업을 수행한다.
그동안 다른 언어에서 사용했던 제어문이 Database에서 Query라는 것으로 동작한다는 뜻이다.
일단 기본적인 문법부터 보자 ( 아래의 예제는 스파르타코딩 강의자료 )
select * from food_orders
위의 쿼리문을 해석하면
*은 colunm 전체를 말한다.
food_orders라는 테이블의
처럼 된다.
where절은 특정 조건을 필터링할 때 사용한다.
select * from 테이블 where 필터링 조건 (ex. age > 20)
where의 조건으로 age > 20 처럼 다른 언어에서 배운 비교 연산자를 사용하여 조건에 맞는 컬럼 전체를 호출하자.
위처럼 확실한 조건도 있지만
- 범위가 필요하거나,
- 무엇을 '포함' 하는 조건이 필요하거나,
- 완전히 똑같지는 않지만 비슷한 값을 조건으로 하고싶을 때
다양한 필터를 사용하여 데이터를 가져올 수 있다.
where age between 10 and 20
where age in (15, 21, 31)
where name like 'A%' # 시작 문자 A where name like ‘%B%’ # 포함하는 문자 B where name like ‘%C’ # 끝나는 문자 C
where 절에 조건을 여러개 달아서 하나의 Query문으로 적용할 수 있다.
- AND : 그리고
- OR : 또는
- NOT : 아닌
select * from 테이블 where age>20 and gender=’female’ # 20세 이상이면서 여성
select * from 테이블 where age>20 or gender=’female’ #20세 이상이거나 여성
select * from 테이블 where not gender=’female’ # not과 비교 연산자 =
후기1. 오늘은 SQL과 Query의 정의 그리고 SQL의 기본적인 Query문과 Query문의 조건들을 알아봤다. 당장의 query문은 python과 비슷한 난이도 같으니 내일은 진도를 조금 더 빼봐야겠다.
후기2. 그래서 내일의 목표는 쿼리를 통한 연산!
후기3. 가능하면 가공까지!!