이번장에서는 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 |