Я пытаюсь отобразить платеж пользователей, разделенных датой и именем пользователя i.e (GROUP BY date, username)
.Это таблица базы данных
id | username | income | date
| | |
1 | super | 750 | 2019-09-21
2 | super | 750 | 2019-09-21
3 | super | 1 | 2019-09-22
4 | super | 750 | 2019-09-22
Это код, который я пытаюсь
$income = 0;
while($row = mysqli_fetch_array($query)){
$income += $row['income'];
}
Это то, что я получаю, когда вижу дату записи мудро
id | username | income | date
| | |
1 | super | 750 | 2019-09-21
2 | super | 751 | 2019-09-22
И это то, что я ожидаю
id | username | income | date
| | |
1 | super | 1500 | 2019-09-21
2 | super | 751 | 2019-09-22
Второй вариант, который я пробую, это
Запрос sql
SELECT id, username, income, COUNT(*) AS total, date FROM payment
GROUP BY date, username
php код
$income = 0;
while($row = mysqli_fetch_array($query)){
$income = $row['income'] * $row['total'];
}
И вот что я получаю
id | username | income | date
| | |
1 | super | 1500 | 2019-09-21
2 | super | 2 | 2019-09-22
Я ожидаю
id | username | income | date
| | |
1 | super | 1500 | 2019-09-21
2 | super | 751 | 2019-09-22
В моеммнение, что эта проблема возникает из-за value 1
в строке, но не знаю, как это исправить.Будем благодарны за любые предложения
ПРИМЕЧАНИЕ - 3rd, 5th, 7th and 10th row
столбца income
будет содержать значение 1