Объединение sum () похожих записей и включение предложения WHERE в SQL

0

Я пытаюсь сложить числа из суммы, если booking_id совпадает. У меня были проблемы с суммированием этих чисел, а также с добавлением предложения WHERE.

Это мой код до сих пор

В настоящее время он правильно суммирует числа, хотя, если я добавлю туда, где он не показывает никаких результатов

select *, Sum(amount) FROM payment group by booking_id where booking_id = 1

Я пробовал некоторые методы, такие как добавление запросов в запросы, но мне не повезло. Результаты, которые я пытаюсь получить, приведены ниже.

booking_id   amount
----------------------
      1    |  5
      2    |  6
      1    |  6
      3    |  2
      3    |  3
      4    |  4

Выход должен быть:

booking_id   amount
    ----------------------
          1    |  11
          2    |  6
          3    |  5
          4    |  4

Я пытаюсь сгруппировать результаты так, чтобы booking_id со значением 1 вернул сумму 5 + 6.

Моя цель - иметь возможность суммировать суммы с одинаковым идентификатором бронирования. А также чтобы иметь возможность включить предложение WHERE в этот запрос

  • 2
    Неправильный порядок, ГДЕ идет перед GROUP BY.
  • 0
    Я попробовал это, и это ничего не меняет @jarlh
Показать ещё 2 комментария
Теги:

3 ответа

1
Лучший ответ

Чтобы получить все booking_id по запросу, просто пропустите WHERE:

select booking_id, Sum(amount)
FROM payment
group by booking_id

Чтобы получить все booking_id для определенного идентификатора (как будет запрошено позже), добавьте WHERE:

select booking_id, Sum(amount)
FROM payment
where client_id = 123
group by booking_id
  • 0
    Это было бы хорошо, хотя мне нужно получить эти результаты только от конкретного человека. Например, если client_id был в базе данных, и я хочу включить только этот конкретный клиент.
  • 0
    Затем добавьте предложение where. Держись, и я буду редактировать.
Показать ещё 2 комментария
0

Где должно быть перед группой

select booking_id , Sum(amount) FROM payment 
where booking_id = 1
group by booking_id 
0

Вы сделали неправильно только для того, чтобы написать sql

   select booking_id, Sum(amount) FROM payment
   where client_id = 1 -- your condition 
   group by booking_id 

Проверьте эту ссылку для заказа

Ещё вопросы

Сообщество Overcoder
Наверх
Меню