이것은 잊어버리지 않기 위해서 기록하는 메뉴얼이다. 

뭔가 값이 주어지고 주어진 값을 통해서 DB에서 추가로 값을 뽑아내야 할 때가 있다. 

 

아래 예를 보도록 하자. 

 

학생 1000명인 학교가 있다. (그냥 그런 학교가 있다고 치자)

그 중 지각한 학생 70명 아이디가 넘어 왔다. (이름 말고 유니크한 아이디로 넘어 왔다고 치자)

학생 명부에서 학생 이름과 학년, 반을 뽑아 보려고 한다. (굳이 아이디로 그렇게 해보자) 

 

보통은 이런 쿼리를 사용한다. 

SELECT 이름, 학년, 반 FROM student WHERE id = '학생 아이디' 

하지만 그러면 같은 쿼리를 70번 돌려야 한다. 

 

스크립트 언어를 다룰 줄 안다면 70명 학생 아이디를 배열로 만들어서 foreach 문으로 돌려볼 수도 있을 것이다. 

$studentArray = ("id1", "id2" ... "id70");

foreach ( $studentArray as $studentID) {

	// $studentID 를 이용해서 DB 쿼리

}

 

하지만 오늘 기록해 놓을 내용은 MySQL에서 쿼리문을 이용해서 간단하게 결과값을 불러오는 방법이다. 

SELECT 
	이름, 학년, 반, (SELECT jigakDate FROM jigak WHERE id= 'id') as 최근지각한날 
FROM 
	student  
WHERE
	id IN ('id1', 'id2', .... 'id70')

위와 같이 해주면 학생 아이디를 통해서 70명의 이름과 학년, 반 그리고 지각한 날짜까지 서브쿼리로 불러올 수 있었다. 

 

예를 극단적으로 들긴 했는데 암튼 이렇게 해서 별도로 스크립트를 돌리지 않고 SQL 구문만을 이용해 결과를 뽑을 수 있었다. 

 

Visual Studio Code를 이용해 넘겨온 id 값을 배열로 정리하는 방법은 따로 정리해서 올리도록 하겠다.

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기