php проблема сравнения дат, я пробую много дат, и это не работает вообще - PullRequest
0 голосов
/ 18 апреля 2020

Мой код работает хорошо, как показано ниже

$sql = "SELECT Type, dt, SUM(Amount) AS Total FROM Expense GROUP BY Type";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
    echo "<table><tr><th>Type</th><th>Amount</th></tr>";
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "</td><td>".$row["Type"]."</td><td>". round($row[Total],2)."</td></tr>";
    }
} else {
    echo "0 results";
}

enter image description here

но я добавляю ГДЕ между '2020-01-23' И '2020 -03-01 'в это, как показано ниже, это показывает 0 результат. Пожалуйста, помогите решить эту проблему.

<?php

$sql = "SELECT Type, dt, SUM(Amount) AS Total FROM Expense GROUP BY Type  WHERE dt BETWEEN '2020-01-23' AND '2020-03-01' ";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    echo "<table><tr><th>Type</th><th>Amount</th></tr>";
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "</td><td>".$row["Type"]."</td><td>". round($row[Total], 2)."</td></tr>";
    }


} else {
    echo "0 results";
}

1 Ответ

1 голос
/ 18 апреля 2020

предложение group by находится не в том месте, см. Ниже, оно должно следовать предложению where

$sql = "SELECT Type, dt, SUM(Amount) AS Total FROM Expense WHERE dt BETWEEN '2020-01-23' AND '2020-03-01' GROUP BY Type  ";
...