sql >> データベース >  >> RDS >> Mysql

PHPMYSQL多次元配列

    ここで少しクリエイティブにする必要があります。次のようなものは、多次元データとの結合および結合として機能します。

    <?php
      require 'php/phpConnection.php';
    
      // ======================================================================
      // Create a join query (way faster than several separate ones!)
      $sqlquery =
        "SELECT SSSA.id, SSS5.educationalname" .
        " FROM supportstaff_section1_a SSSA" .
          " LEFT OUTER JOIN supportstaff_section5 SSS5 ON SSS5.id = SSSA.ID";
    
    
      // ======================================================================
      // Run the query and get our results
      $resultarray = array();
      if ($resource = mysql_query($sqlquery)) {
        while ($curarray = mysql_fetch_assoc($resource)) {
          // Create an array, if it doesn't exist
          if (!isset($resultarray[$curarray["id"]]))
            $resultarray[$curarray["id"]] = array();
    
          // Add to the array, if not null
          $curstring = (string) $curarray["educationalname"];
          if ($curstring != "")
            $resultarray[$curarray["id"]][] = $curstring;
        }
        mysql_free_result($resource);
      }
    
    
      // ======================================================================
      // Convert from a keyed array to a standard indexed array (0, 1, 2, etc.)
      $finalarray = array();
      foreach ($resultarray as $id => & $data) {
        // Start with just ID
        $newarray = array(
          "id" => $id
        );
    
        // Get the data, if we have any
        if (count($data))
          $newarray["educationalnames"] = & $data;
    
        // Add to our final array and clear the newarray
        $finalarray[] = & $newarray;
        unset($newarray);
      }
    
    
      // ======================================================================
      // Get the JSON of our result
      $jsonresult = json_encode($finalarray);
    
    
      // ======================================================================
      // Echo it to test
      echo $jsonresult;
    
    
      // ======================================================================
      // Close the database
      mysql_close($con);
    ?>
    

    そして、結果の$ jsondataは次のようになります(もちろん、それほど解明されていません):

    [
      {
        "id": "8m8wwy",
        "educationalnames": ["GCSE - English", "GCSE - Maths"]
      },
      {
        "id": "wiL7Bn"
      },
      {
        "id": "zAw6M1"
      }
    ]
    


    1. T-SQLで日付から日を取得する方法

    2. dbms_output.put_line

    3. PHPコマンドの非同期エラー

    4. エラー404がEM12cで見つかりません