본문 바로가기
PHP/PHP Database

PHP Mysql Where 구문

by 진격의 파파 2013. 7. 9.
반응형

 

 

이번장에서는 Mysql 테이블에서 레코드를 필터링 하는 where 구문에 대해서 알아보겠습니다.

 

where 우리나라 말로 '어디' 입니다. 이전포스팅에 적었던 select 에서 사용되는 구문입니다.

 

기본구문은 select * from table where field = '박' 처럼 사용가능합니다.

// table 에서 field가 '박'인것만을 찾아서 보여달라는 의미입니다.

 

PHP 구문에서 위와 같이 데이터베이스의 내용을 가져오기 위해선 이전에도 말했듯이 mysqli_query() 함수를 이용해야 합니다.

관련예제

<?php
$conn = mysqli_connect("localhost","user_id","user_pwd","test_db"); // 데이터베이스 연결

if (mysqli_connect_errno()){
 echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$result = mysqli_query($conn,"SELECT * FROM Persons where user_name = 'park'");

// user_name 이 'park' 인 값만을 가져오라

while($row = mysqli_fetch_array($result)){
 echo $row['user_name'] . " / " . $row['age'];
 echo "<br>";
}

mysqli_close($conn);
?>

// where 구문은 주로 "검색"에서 많이 사용됩니다. 위의 구문은 간단하게 user_name 의 값이 park인 사람만 찾았는데 이외에도 사용방법이 많이 있습니다.

 

select * from persons where user_name = 'park' and age = '22'

// where 구문을 사용할때 한가지 이상의 조건을 검색해서 가져오는 경우는 "and" 옵션을 사용합니다. 그래서 위 구문의 내용은 user_name 이 park 이며 age 가 22 인 레코드를 보여주게 됩니다.

 

select * from persons where user_name = 'park' or age = '22'

// 위 구문은 or 를 이용한 방법입니다. 내용은 user_name 이 park 이거나(또는) age 가 22 인 레코드를 보여주게 됩니다.

// and 옵션은 두가지 조건이 모두 만족되어야 하지만 or 옵션은 한가지 조건만 만족되어도 내용을 가져오게 됩니다. 

 

select * from persons where user_name like 'park'

// 위 구문의 틀린점은 "=" 대신 "like" 을 사용하는데 like의 의미는 'park'라는 단어가 들어있는 모든 내용을 가져옵니다. 즉, 'parks','parking','parkland' 등의 내용을 보여줍니다.

 

이처럼 where 구문은 코딩을 하면서 매우 자주 사용하게 되는 항목입니다. 기본적인 설명을 하였으니 이제 응용을 해보시기 바랍니다.

 

내용중 오타 또는 오류가 있으면 댓글 또는 쪽지 부탁드립니다.

 

다음장에서는 Mysql 정렬에 대해서 알아보겠습니다.

 

 

반응형

'PHP > PHP Database ' 카테고리의 다른 글

PHP Mysql Update 구문  (1) 2013.07.11
PHP MySQL Order By(정열) 구문  (0) 2013.07.10
PHP Mysql Select 구문  (0) 2013.07.08
PHP Mysql insert into 구문  (0) 2013.07.05
PHP 데이터베이스 및 테이블 만들기  (5) 2013.07.04