서브쿼리 SQL문을 실행할 때, 추가로 필요한 데이터를 조회할 때 사용합니다. 보통은 WHERE문에서 사용되지만, FROM, SELECT문 등에서도 사용이 가능합니다. 사용방법 SELECT 열 FROM 테이블 WHERE 조건식 (SELECT 열 FROM 테이블 WHERE 조건식); 예를 들어서, 학생 테이블에서 홍길동 학생의 학비보다 더 많이 학비를 내고 있는 학생들의 목록을 출력하고 싶을 경우에는 어떻게 해야하나? 홍길동 학생의 학비값을 출력해서 얻은 다음 -> 그 값을 WHERE 조건식에 넣어서 조건식에 만족하는 학생들 출력 SELECT 학비 FROM 학생 WHERE 이름 = '홍길동'; 위의 출력값이 300이었을 때, SELECT * FROM 학생 WHERE 학비 = 300; 두 번의 과정을 거쳐야..
IT 공부
앞에 포스팅한 조인글에서는 SQL-99표준을 이용하지 않고 조인을 사용했는데 이번에는 SQL-99표준 문법을 사용한 조인을 배워볼려고 합니다. SQL-99 표준 문법을 사용해서 얻는 이점이 무엇인가??? WHERE문과 조인 조건식을 따로 분리할 수 있기 때문에 가독성이 좋아집니다. NATURAL JOIN 앞서 배운 등가 조인과 같은 방식으로 조인됩니다. SELECT * FROM 학생 S NATURAL JOIN 학과 M; 등가 조인인데 왜 WHERE절을 이용해서 조건식을 만들어주지 않는 이유는 ??? 바로 NATURAL JOIN은 두 테이블 학생/학과의 공통 속성이 학과번호를 기준으로 자동으로 조인해주기 때문입니다. 등가 조인인 경우 SELECT * FROM 학생 S, 학과 M WHERE 학생.학과번호 =..
조인 두 개 이상의 테이블을 연결하여 하나의 테이블로 만들어 출력할 때 사용한다. 사용방법 SELECT 열1, 열2, ...., 열N FROM 테이블1, 테이블2, ..., 테이블N WHERE 조건식; 그 밖에, GROUP BY, ORDER BY절 등 사용가능합니다. 여기서 WHERE 절을 사용했을 때와, 사용하지 않았을 때의 차이점이 있는데 WHERE절을 사용하지 않았을 때 테이블1과 테이블2가 가로로 조합되어 출력되어 원하지 않는 행까지 모두 출력이 됩니다. 예) 테이블1의 행의 수가 6개이고 테이블2는 3개일 경우 - 총 출력되는 행의 수는 6*3 = 18개가 됩니다. 등가 조인 SELECT * FROM 학생, 학과 WHERE 학생.학과번호 = 학과.학과번호; 위와 같이 WHERE를 사용해서 동일한..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbbb5LT%2Fbtrim7ay0Op%2Fjk8nVkAt4CKHqPfmASen51%2Fimg.png)
초기설정 필요한 준비 : Java11버전, intelij Spring Boot 스프링 boot를 사용하면, 스프링 프로젝트의 필요한 전체적인 구조를 쉽~게 만들 수 있습니다. https://start.spring.io Maven project와 Gradle project가 있는데, 일단 두개다 빌딩해주는 도구인데 최근에는 Gradle을 많이 쓴다고 합니다. Spring Boot 버전을 선택하는 곳이 있는데 SNAPSHOT은 한창 개발중인 버전이라 해서 아무것도 써져있지 않은 것을 선택하면 됩니다. 그아래에는, 프로젝트의 이름을 적거나 그런 부분이 있고 맨 아래 Dependencies 라는 부분이 있습니다. 프로젝트에서 사용할 라이브러리들을 추가하는 곳으로 웹 사이트 개발할 것이기 때문에 Spring We..
캐시 캐시가 없을 때 서버에 요청해서 데이터를 한 번 받아왔을 때, 다음에 또 똑같은 데이터를 요청하면 또 한번 네트워크 서버를 사용해서 해당 요청을 거쳐서 데이터를 받와야하기 때문에 서버 사용량과 시간이 발생합니다. 캐시가 있을 때 위와같은 문제를 해결하기 위해서, 처음 데이터를 서버에서 전송할 때, 브라우저에 존재하는 캐시 저장소에 저장을 하도록 합니다. 그래서 똑같은 요청을 했을 때, 서버에 요청을 하는 것이아니라 캐시 저장소에서 바로 받아올 수 있도록 하는 것 1. 이미지 요청 GET /image.png HTTP/1.1 Host: www.google.com 2. 이미지 리소스 응답 HTTP/1.1 200 OK Content-Type: image/png cache-control: max-age=60..
상태코드 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능 100번대 (Informational) - 요청이 수신되어 처리중 - 거의 사용하지 않음!! 200번대 (Successful) - 요청 정상 처리 주요 코드 200 Ok HTTP/1.1 200 OK Content-Type: appllication/json Content-Length: oo { "name": "jongin", "age": 28, } 리소스를 요청했을 때, 성공적으로 응답이 됐을 경우 받을 수 있는 상태 코드 201 Created HTTP/1.1 201 Created Content-Type: appllication/json Content-Length: oo Location: /members/100 { "name": "jon..