[PHP] MySQL 특정 조건의 데이터 불러오기 WHERE
2022. 10. 4. 02:05ㆍProgram/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제
김태영 지음 | 정보문화사
'Program > PHP' 카테고리의 다른 글
[PHP] MySQL 불러올 레코드 수 지정하기 LIMIT (0) | 2022.10.04 |
---|---|
[PHP] MySQL 데이터 정렬하기 ORDER BY (0) | 2022.10.04 |
[PHP] MySQL 테이블의 데이터 불러오기 SELECT (0) | 2022.10.01 |
[PHP] MySQL 테이블에 데이터 입력하기 INSERT INTO (0) | 2022.10.01 |
[PHP] MySQL 테이블 삭제하기 DROP TABLE (0) | 2022.10.01 |