MySQLi-쿼리 선택

SQL SELECT명령은 MySQLi 데이터베이스에서 데이터를 가져 오는 데 사용됩니다. mysql> 프롬프트와 PHP와 같은 모든 스크립트에서이 명령을 사용할 수 있습니다.

통사론

다음은 MySQLi 테이블에서 데이터를 가져 오는 SELECT 명령의 일반적인 SQL 구문입니다.

SELECT field1, field2,...fieldN table_name1, table_name2...
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • WHERE 절을 사용하여 다양한 조건을 포함하기 위해 쉼표로 구분 된 하나 이상의 테이블을 사용할 수 있지만 WHERE 절은 SELECT 명령의 선택적 부분입니다.

  • 단일 SELECT 명령에서 하나 이상의 필드를 가져올 수 있습니다.

  • 필드 대신 별표 (*)를 지정할 수 있습니다. 이 경우 SELECT는 모든 필드를 반환합니다.

  • WHERE 절을 사용하여 모든 조건을 지정할 수 있습니다.

  • 다음을 사용하여 오프셋을 지정할 수 있습니다. OFFSETSELECT는 레코드 반환을 시작합니다. 기본적으로 오프셋은 0입니다.

  • 다음을 사용하여 반품 횟수를 제한 할 수 있습니다. LIMIT 속성.

명령 프롬프트에서 데이터 가져 오기 −

이것은 SQL SELECT 명령을 사용하여 MySQLi 테이블에서 데이터를 가져옵니다 tutorials_tbl

다음 예제는 모든 레코드를 반환합니다. tutorials_inf 표 −

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

mysql> use TUTORIALS;
Database changed

mysql> SELECT * from tutorials_inf;
+----+------+
| id | name |
+----+------+
|  1 | sai  |
|  2 | kit  |
|  3 | ram  |
+----+------+
3 rows in set (0.00 sec)

mysql>

PHP 스크립트를 사용하여 데이터 가져 오기

동일한 SQL SELECT 명령을 PHP 함수에 사용할 수 있습니다. mysqli_query(). 이 함수는 SQL 명령을 실행하고 나중에 다른 PHP 함수를 실행하는 데 사용됩니다.mysqli_fetch_assoc()선택한 모든 데이터를 가져 오는 데 사용할 수 있습니다. 이 함수는 연관 배열, 숫자 배열 또는 둘 다로 행을 반환합니다. 이 함수는 행이 더 이상 없으면 FALSE를 반환합니다.

다음은 레코드를 가져 오는 간단한 예입니다. tutorials_inf 표.

다음 예제를 사용하여 tutorials_inf 테이블의 모든 레코드를 표시하십시오.

<html>
   <head>
      <title>Selecting Table in MySQLi Server</title>
   </head>

   <body>
      <?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 name FROM tutorials_inf';
         $result = mysqli_query($conn, $sql);

         if (mysqli_num_rows($result) > 0) {
            while($row = mysqli_fetch_assoc($result)) {
               echo "Name: " . $row["name"]. "<br>";
            }
         } else {
            echo "0 results";
         }
         mysqli_close($conn);
      ?>
   </body>
</html>

행의 내용이 $ row 변수에 할당되고 행의 값이 인쇄됩니다.

NOTE − 배열 값을 문자열에 직접 삽입하려면 항상 중괄호를 넣어야합니다.

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

Connected successfully
Name: ram
Name: kit
Name: abc