0
フィールドにSUMを持つ結合ステートメントに問題があります。SELECTステートメントの各行のSUM
表1(親): - INT(11) - オートインクリメント
- ID Tripsの Iは、これら2つのテーブルを持っています
表2(子供):予約
- ID - INT(11) - オートインクリメント
- FK_ID - INT(11)
- スポット - INT(11)
Iは、次のコードを有する:
$SQL = "SELECT "; $SQL .= "SUM(Bookings.Spots) as SUMSPOT, Trips.ID, Bookings.FK_ID, Bookings.ID "; $SQL .= "FROM Trips "; $SQL .= "INNER JOIN Bookings on Bookings.FK_ID = Trips.ID"; $SQL_Query = mysql_query($SQL); $tdOdd = 'style = "background-color: #FFFFFF;"'; $tdEven = 'style = "background-color: #ced4ee;"'; echo "<table>"; echo "<tr>"; echo "<th>Trip nr</th>"; echo "<th>Sum of spots</th>"; echo "</tr>"; $indx = 1; while ($row = mysql_fetch_array($SQL_Query, MYSQL_ASSOC)) { $Tripnr = $row['FK_ID']; $Sumspots = $row['SUMSPOT']; if (($indx % 2) == 1) {$rowClass = $tdOdd; } else { $rowClass = $tdEven; } echo "<tr ".$rowClass.">"; echo "<td>".$Tripnr."</td>"; echo "<td>".$Sumspots."</td>"; echo "</tr>"; $indx++; } echo "</table>"; mysql_free_result($SQL_Query);
をすべてのスポットの合計(結合内)を含む1つの予約ラインのみを返します。各行のBooking.Spotsの合計を私に与える必要があります。誰にでも助けますか?
サンプルテーブルのデータと期待される結果をすべてフォーマット済みのテキストとして追加します。また、クエリをスタンドアロンで表示してください。 – jarlh
あなたの選択したクエリで 'group by Spots'を使用しようとしました – KMS