Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Dua kueri mysql dalam satu objek json

Saya pikir Anda dapat mencoba ini

$result = mysql_query("SELECT * FROM data where id='123456'");
$fetch = mysql_query("SELECT name,age,city FROM people where id='123456'"); 

// I think, you'll get a single row, so no need to loop
$json = mysql_fetch_array($result, MYSQL_ASSOC);

$json2 = array();
while ($row = mysql_fetch_assoc($fetch)){
    $json2[] = array( 
        'name' => $row["name"],
        'age' => $row["age"],
        'city' => $row["city"]
    );
}
$json['people'] = $json2;
echo json_encode($json);

Hasil print_r($json) seharusnya seperti ini

Array
(
    [date] => 2013-07-20
    [year] => 2013
    [id] => 123456
    [people] => Array
        (
            [0] => Array
                (
                    [name] => First
                    [age] => 60
                    [city] => 1
                )

            [1] => Array
                (
                    [name] => second
                    [age] => 40
                    [city] => 2
                )

        )

)

Hasil echo json_encode($json) seharusnya

{
    "date" : "2013-07-20",
    "year":"2013",
    "id":"123456",
    "people":
    [
        {
            "name" : "First",
            "age" : "60",
            "city" : "1"
        },
        {
            "name" : "second",
            "age" : "40",
            "city" : "2"
        }
    ]
}

Jika Anda melakukan echo json_encode(array($json)) maka Anda akan mendapatkan seluruh json dibungkus dalam array, seperti ini

[
    {
        "date" : "2013-07-20",
        "year":"2013",
        "id":"123456",
        "people":
        [
            {
                "name" : "First",
                "age" : "60",
                "city" : "1"
            },
            {
                "name" : "second",
                "age" : "40",
                "city" : "2"
            }
        ]
    }
]


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - paksa untuk tidak menggunakan cache untuk menguji kecepatan kueri

  2. PDO::rowCount VS COUNT(*)

  3. MySQLi - mendeklarasikan variabel setelah bind_param?

  4. Apa cara kanonik untuk menarik catatan dari database MySQL yang memiliki bidang terkecil/terbesar?

  5. MySQL Query ORDER BY nilai-nilai tertentu sebelum yang lain