PostgreSQL 26

[SQL 문법] IN

집합에 값이 존재하는지 확인하는 연산자 customer_id의 값이 '1'과 '2'인 값 골라내기 SELECT r.customer_id , r.rental_id , r.rental_date FROM rental r WHERE r.customer_id IN (1,2) ORDER BY r.return_date DESC; 이렇게 1, 2 만 골라나옴 같은 표현. SELECT r.customer_id , r.rental_id , r.rental_date FROM rental r WHERE r.customer_id = 1 OR r.customer_id = 2 ORDER BY r.return_date DESC; 하지만, 가독성과 성능 측면에서 IN이 좋으니 IN을 쓰도록 하자~ customer_id의 값에 '1'과..

[SQL 문법] FETCH

LIMIT 와 동일하게 부분 범위 처리 시 사용한다. 부분 범위 처리를 잘하는 사람이 실력을 인정받고 있단다. LIMIT와 비교해서 다를게 없고 취향따라 쓴다고 한다. title로 정렬하여 최초의 1건을 뽑는다 SELECT f.language_id, f.fulltext FROM film f ORDER BY f.title LIMIT 1; 이렇게 하면 안되나? 싶은데 SELECT f.language_id, f.fulltext FROM film f ORDER BY f.title LIMIT 1; 그래서 궁금해서 ctrl + shift + E 해보았다 뭐 비슷.. 앞에 10개 이후에 최초의 10건을 뽑는다 SELECT f.film_id , f.title FROM film f ORDER BY f.title OFFS..

[SQL 문법] LIMIT

출력 값을 제한하는 용도. 엄청 많이 쓰임. postgresql, mysql 에서 지원 'film' table의 5개 행 불러오기 SELECT f.film_id, f.title, f.release_year FROM film f LIMIT 5; 5개를 가져옵니다. 그런데 계속 해보면 film_id 가 랜덤인 것을 알 수 있습니다. 왜냐하면 order by 가 없기 때문입니다. 'film' table의 5번째 까지 행 불러오기 SELECT f.film_id, f.title, f.release_year FROM film f ORDER BY f.film_id LIMIT 5 ; 이젠 5개가 깔끔하게 불러와 집니다. 'film' table의 11번째 부터 15번째 까지 행 불러오기 - OFFSET SELECT f...

[SQL 문법] SELECT 문 그리고 alias

SELECT 는 말 그대로 Table에서 보고 싶은 Column을 고르기 위한 명령어. 한 두번 해보면 감이 옴. 역시 뭐든 직접 해봐야 해. alias 는 SQL 문의 실행 속도? 효율을 높이는 방법이라 함 DBeaver에서 퍼포먼스 체크가 있는데 SQL 문을 전체 선택하고 (선택 안하면 결과가 다르게 나옴, 물론 선택해도 돌릴 때 마다 결과가 다르게 나옴) ctr + shift + E #1 alias 쓰지 않았을 때 : 0.364 #2 썼을 때 : 0.240 www.postgresqltutorial.com/postgresql-alias/ PostgreSQL Alias www.postgresqltutorial.com 빨라지는 듯. 효율이 중요하니깐, 이건 익혀둬야겠다.