MySQLi-결과 정렬

우리는 SQL을 보았다 SELECTMySQLi 테이블에서 데이터를 가져 오는 명령. 행을 선택하면 MySQLi 서버는 결과를 정렬하는 방법을 말하여 달리 지시하지 않는 한 임의의 순서로 자유롭게 반환 할 수 있습니다. 그러나 정렬 할 열의 이름을 지정하는 ORDER BY 절을 추가하여 결과 집합을 정렬합니다.

통사론

다음은 MySQL 테이블에서 데이터를 정렬하는 ORDER BY 절과 함께 SELECT 명령의 일반적인 SQL 구문입니다.

SELECT field1, field2,...fieldN table_name1, table_name2...
ORDER BY field1, [field2...] [ASC [DESC]]
  • 필드가 나열되는 경우 모든 필드에서 반환 된 결과를 정렬 할 수 있습니다.

  • 둘 이상의 필드에서 결과를 정렬 할 수 있습니다.

  • 키워드 ASC 또는 DESC를 사용하여 오름차순 또는 내림차순으로 결과를 얻을 수 있습니다. 기본적으로 오름차순입니다.

  • 일반적인 방법으로 WHERE ... LIKE 절을 사용하여 조건을 입력 할 수 있습니다.

명령 프롬프트에서 ORDER BY 절 사용

이것은 MySQLi 테이블 tutorials_inf에서 데이터를 가져 오기 위해 ORDER BY 절과 함께 SQL SELECT 명령을 사용합니다.

결과를 내림차순으로 반환하는 다음 예제를 사용해보십시오.

root@host# mysql -u root -p password;
Enter password:*******

mysql> use TUTORIALS;
Database changed

mysql> SELECT * from tutorials_inf ORDER BY id desc;
+----+-------+
| id | name  |
+----+-------+
|  4 | ram   |
|  3 | raghu |
|  2 | johar |
|  1 | sai   |
+----+-------+
4 rows in set (0.00 sec)

mysql>

모든 ID가 내림차순으로 나열되어 있는지 확인하십시오.

PHP 스크립트 내에서 ORDER BY 절 사용

ORDER BY 절의 유사한 구문을 PHP 함수에 사용할 수 있습니다. mysqli_query(). 이 함수는 SQL 명령을 실행하고 나중에 다른 PHP 함수를 실행하는 데 사용됩니다.mysqli_fetch_array() 선택한 모든 데이터를 가져 오는 데 사용할 수 있습니다.

튜토리얼 작성자의 내림차순으로 결과를 반환하는 다음 예제를 시도해보십시오.

<?php
   $dbhost = 'localhost:3306';
   $dbuser = 'root';
   $dbpass = '';
   $dbname = 'TUTORIALS';
   $conn = mysqli_connect($dbhost, $dbuser, $dbpass,$dbname);
   
   if(! $conn ) {
      die('Could not connect: ' . mysqli_error());
   }
   echo 'Connected successfully</br>';
   $sql = 'SELECT * from tutorials_inf ORDER BY id desc';
   
   if($result = mysqli_query($conn, $sql)){
      if(mysqli_num_rows($result) > 0){
         echo "<table>";
         echo "<tr>";
         echo "<th>id</th>";
         echo "<th>name</th>";
         echo "</tr>";
         
         while($row = mysqli_fetch_array($result)){
            echo "<tr>";
            echo "<td>" . $row['id'] . "</td>";
            echo "<td>" . $row['name'] . "</td>";
            echo "</tr>";
         }
         echo "</table>";
         mysqli_free_result($result);
      } else {
         echo "No records matching your query were found.";
      }
   } else {
      echo "ERROR: Could not able to execute $sql. " . mysqli_error($conn);
   }
   mysqli_close($conn);
?>

샘플 출력은 다음과 같아야합니다.

Connected successfully
id	name
4	ram
3	raghu
2	johar
1	sai