본문 바로가기
PHP/PHP Database

PHP MySQL Order By(정열) 구문

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

 

 

이번장에서는 PHP Mysql order by 구문에 대해서 포스팅하겠습니다.

 

order by 는 리스트의 내용을 'ㄱ,ㄴ,ㄷ,ㄹ...', '1, 2, 3, 4...', 'a, b, c, d...' 또는 역순으로 정열을 할 수 있는 구문입니다.

 

보통 오름차순, 내림차순 이라고 표현을 합니다.

 

오름차순은 order by ASC, 내림차순은 order by DESC를 사용합니다.

 

오름차순은 말그대로 올라간다는 의미죠. 그래서 1, 2, 3,  ㄱ, ㄴ, ㄷ ... 와 같은 형식으로 정열되며, 내림차순은 그 반대 입니다.

 

기본구문은 아래와 같습니다.

select * from table order by column_name ASC/DESC

 

관련예제(내림차순 정열)

<?php
$conn = mysqli_connect("localhost","user_id","user_pwd","test_db"); // Check Database Connection

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

$result = mysqli_query($conn,"SELECT * FROM Persons ORDER BY age");

while($row = mysqli_fetch_array($result)){
 echo $row['user_name']." / ";  // user_name 와 age 를 기호 / 로 연결시켜줌
 echo $row['age'];
 echo "<br>";
}

mysqli_close($conn);
?>

// 위 코드내용을 보면 order by 구문이 들어가 있는것을 확인할 수 있는데 원칙적으로 order by age asc 이렇게 되어야 맞습니다. 그런데 asc가 생략이 되었죠. 기본적으로 order by 구문은 내림차순으로 정열을 하는데 asc의 경우는 생략을 해도 무방합니다. 하지만 오름차순 즉 desc 를 사용할 경우 필히 order by age desc 라고 넣어주어야 합니다.

// 위 구문이 출력되는 내용은 나이가 적은순부터 차례차례 나오게 됩니다.

 

 

정열방식은 하나이상의 정열이 가능합니다. 무슨말인가 하면 일단 예제부터 살펴보겠습니다.

SELECT * FROM Persons ORDER BY age , user_name

위 처럼 사용하면 나이순, 이름순으로 정열이 됩니다. 즉, 나이가 적은순, 이름이 가나다순 또는 abc 순으로 차례차례 나오게 됩니다.

이전장의 Insert into 구문에 대해서 포스팅한 내용이 있는데 그 내용을 테스트 해보길 바랍니다.

반응형

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

PHP Mysql delete 구문  (2) 2013.07.12
PHP Mysql Update 구문  (1) 2013.07.11
PHP Mysql Where 구문  (0) 2013.07.09
PHP Mysql Select 구문  (0) 2013.07.08
PHP Mysql insert into 구문  (0) 2013.07.05