2017-08-09 11 views
0

ここで私はMySQLからカウントを取得したい、私は2つのテーブルは私がカウントを取るしたい、私はカウントを取るしたいですか?2つのテーブル値を取ってjsonレスポンスで行う方法

ここで、tripは、3つのカウントと2つのカウントを持つtrip id 2を持つテーブルとtrip id 1の両方に共通です。

trip_details(テーブル名)

tripId  cabNo 

    1   BMW4455 

    2   Audi005 

trip_member(テーブル名)

id tripId empId 

1  1  100 
2  1  101 
3  1  102 
4  2  105 
5  2  106 

期待される結果

{ 
"status": "success", 
"data": [ 
    { 
     "tripId": "1", 
     "cabNo": "BMW4455", 
     "empcount": "3" 
     "employees": [ 
      { 
       "empId": "100", 
      }, 
      { 
       "empId": "101", 
      }, 
      { 
       "empId": "102", 
      } 
     ] 
    }, 
    { 
     "tripId": "2", 
     "cabNo": "Ad2K2001", 
     "count": "2" 
     "employees": [ 
      { 
       "empId": "100", 
      }, 
      { 
       "empId": "101", 
      }, 
      { 
       "empId": "102", 
      } 
     ] 
    } 
] 
} 

私が試したが、私はここで私の正確な答えマイコードを取得していない午前

 $sql = "SELECT * FROM trip_details a INNER JOIN trip_member b ON a.tripId=b.tripId GROUP BY a.tripId"; 
    $mysql = mysql_query($sql); 
    $count =mysql_num_rows($mysql); 
    if($count > 0){ 
    while ($row = mysql_fetch_assoc($mysql)) { 
    $data[] = $row; 
    } 
    $arrayName = array('status' => 'success', 'count' => $count, 'data' =>$data); 
    echo json_encode($arrayName); 
}else{ 
$arrayName = array('status' => 'error', 'data' =>'Data not found'); 
    echo json_encode($arrayName); 
} 

私はヨーヨーので、出力

{ 
"status": "success", 
"count": 2, 
"data": [ 
    { 
     "tripId": "1", 
     "cabNo": "BMW4455", 
     "driverId": "DRE001", 
     "routeId": "1", 
     "tripDate": "", 
     "startTime": "", 
     "endTime": "", 
     "shiftId": "1", 
     "tripStatus": "0", 
     "id": "1", 
     "empId": "100", 
     "callStartTime": "", 
     "callEndTime": "", 
     "cabReachingTime": "", 
     "pickupTime": "", 
     "dropTime": "", 
     "dropStatus": "", 
     "otp": "", 
     "pickupotpStatus": "", 
     "empPresentStatus": "" 
    }, 
    { 
     "tripId": "2", 
     "cabNo": "Audi005", 
     "driverId": "DRV101", 
     "routeId": "2", 
     "tripDate": "", 
     "startTime": "", 
     "endTime": "", 
     "shiftId": "1", 
     "tripStatus": "0", 
     "id": "4", 
     "empId": "105", 
     "callStartTime": "", 
     "callEndTime": "", 
     "cabReachingTime": "", 
     "pickupTime": "", 
     "dropTime": "", 
     "dropStatus": "", 
     "otp": "", 
     "pickupotpStatus": "", 
     "empPresentStatus": "" 
    } 
] 
} 
+0

今はどうなっていますか? –

+1

まず、mysql拡張は廃止されました。代わりに 'mysqli'を使用してください。あなたが得た出力も表示してください。 – Anonymous

答えて

0

を取得していますカウントだけが必要な場合は、クエリを次のように変更する必要があります。

SELECT count(*) as count, tm.tripId from trip_details td 
JOIN trip_member tm on tm. tripId = td.tripId 
GROUP by tm.tripId 
+0

Mr @ Milan Chheda、私の期待している結果のようなjsonを作る方法 –

関連する問題