TIL

220930 TIL 개인프로젝트 SQL쿼리 입문

Vince_rf 2022. 9. 30. 19:04

# 용어 정리 : 데이터베이스 안에 '테이블'이 여러개 있다. ( 참고로 테이블을 보는 쿼리는 show tables ) 테이블 안에 '필드'가 여러개 존재하며(Spring에서 @Column을 달아주는), 데이터가 담긴 한 줄 한 줄을 'row'라고 한다.

 

 

 

 

1# orders 테이블에서 '웹개발 종합반'이 아닌 값을 가져올 때

select * from orders
where course_title != "웹개발 종합반";



2# orders 테이블에서 7월 13일, 7월 14일의 주문데이터만 가져올 때

select * from orders
where created_at between "2020-07-13" and "2020-07-15";



3# checkins 테이블에서 week 필드의 1, 3주차 데이터만 가져올 때

select * from checkins 
where week in (1, 3);



4# users 테이블에서 다음 (daum) 이메일을 사용하는 유저만 가져올 때

select * from users 
where email like '%daum.net';



5# orders 테이블에서 카카오페이로 결제한 유저만 찾되, 딱 5개만 출력

select * from orders 
where payment_method = "kakaopay"
limit 5;



6# 중복 데이터는 제외하고 가져오기 distinct()

select distinct(payment_method) from orders;



7# 데이터가 몇 개인지 세어보기 count()

select count(*) from orders



8# distinct()와 count()를 같이 써보기

SELECT count(distinct(name)) from users;








2# 특이 사항 : 여기서는 쌍따옴표가 적상작동을 한다. 문자열과 같이, 그냥 따옴표로 감쌌을 때도 정상작동하는
것을 확인했다. 
between의 특성 때문일까?
숫자나 날짜 데이터 값의 특성일까?
날짜를 라이브러리를 사용해서 저장한 것이 아니라면, 저것 또한 그냥 문자열일텐데? 그렇다면 between의
특성 때문일 것이라고 현재는 추측해본다. 이에 대해서는 더 깊은 공부를 진행해서 꼭 알아낼 것이다.

'TIL' 카테고리의 다른 글

TIL 221003 개인프로젝트 queryDsl 트러블슈팅  (1) 2022.10.03
TIL 221001 개인프로젝트 SQL 쿼리  (0) 2022.10.01
TIL 220929  (0) 2022.09.29
TIL 220928  (0) 2022.09.29
TIL 220927  (2) 2022.09.27