[PHP] MySQL 특정 조건의 데이터 불러오기 WHERE

2022. 10. 4. 02:05Program/PHP

116_PHP MySQL 특정 조건의 데이터 불러오기 WHERE

[요약]

  • MySQL에서 특정 데이터를 불러오는 명령문 WHERE 에 대해 알아보자.

데이터를 불러올 때 특정한 조건을 적용하여 적합한 데이터만 불러 올 수 있다.

퀄문에 WHERE문을 사용하여 조건을 적용한다.

[MySQL 조건식]

기호
= 같다
!= 같지 않다
<>
>= 크거나 같다
<= 작거나 같다
> 크다
< 작다

 

[WHERE 사용 방법]

SELECT 필드 FROM 테이블명 WHERE 필드명 조건기호 값;

myMember 테이블에서 고객번호가 1번인 데이터를 가져온다면 쿼리문은 다음과 같다.

SELECT * FROM myMember WHERE myMemberID = 1;

고객번호가 1번이 아닌 고객의 정보를 불러온다면 다음과 같다.

SELECT * FROM myMember WHERE myMemberID != 1;

또는

SELECT * FROM myMember WHERE myMemberID <> 1;

 

다음은 고객번호가 2번인 회원의 데이터를 출력하는 예제이다.

[예제: 119-1_selectWhereEqual.php ]

<?php
    include $_SERVER['DOCUMENT_ROOT'] . '/php/108-2_connectDB.php';

    $sql = "SELECT name, userId FROM myMember WHERE myMemberID = 2";
    $result = $dbConnect->query($sql);  // 쿼리 송신

    $memberInfo = $result->fetch_array(MYSQLI_ASSOC);
    echo "이름 : " . $memberInfo['name'];
    echo "<br>";
    echo "아이디 : " . $memberInfo['userId'];
?>

실행결과

이러한 방법으로 자신이 원하는 정보에 맞는 데이터를 가져올 수 있다.

WHERE문을 사용할 때 일부 텍스트가 일치하는 조건을 찾을 수도 있다.

이러한 조건에서는 LIKE 문을 이용한다.

이메일에 playdaddy라는 텍스트가 있고, 앞뒤에 어떠한 텍스트가 있는 경우 텍스틔 앞뒤로 %를 붙여준다.

SELECT * FROM myMember WHERE email LIKE '%playdaddy%';

이메일에 playdaddy라는 텍스트라 있고 그 텍스트 앞에 아무것도 없는 데이터를 찾는다면 앞에는 %를 붙이지 않고 뒤에만 붙여준다.

SELECT * FROM myMember WHERE email LIKE 'playdaddy%';

이메일에 playdaddy라는 텍스트가 있고 그 텍스트 앞에 어떠한 텍스트가 있고, 뒤에는 아무것도 없는 데이터를 찾는다면 앞에만 %를 붙여준다.

SELECT * FROM myMember WHERE email LIKE '%playdaddy';

 

다음은 LIKE문을 사용하여 userId 필드의 값이 m으로 시작하는 데이터를 출력하는 예제이다.

[예제: 119-2_selectWhereLike.php ]

<?php
    include $_SERVER['DOCUMENT_ROOT'] . '/php/108-2_connectDB.php';

    $sql = "SELECT name, userId FROM myMember WHERE userId LIKE 'p%'";
    $result = $dbConnect->query($sql);  // 쿼리 송신

    $dataCount = $result->num_rows;

    for ($i = 0; $i < $dataCount; $i++) {
      $memberInfo = $result->fetch_array(MYSQLI_ASSOC);
      echo "이름 : " . $memberInfo['name'];
      echo "<br>";
      echo "아이디 : " . $memberInfo['userId'];
      echo "<hr>";
    }
?>

실행결과

p로 시작되는 userId의 결과값을 반환해준다.

 

 

 


 

 

 

초보자를 위한 PHP 200제
김태영 지음 | 정보문화사