#sql
#sql
Вопрос:
Я новичок в использовании SQL. Я создал следующую простую базу данных, в которой есть идентификатор музыкальных альбомов и количество купленных копий.
В album_ID
столбце есть две части данных с идентификатором 1. Они имеют quantity_bought
значения 10 и 4. Возможно ли объединить эти две строки в одну строку с идентификатором 1 и общим quantity_bought
значением 14?
Комментарии:
1. Используйте агрегатную функцию
SUM()
иGroup By
. Итак, код должен быть такимSelect album_ID ,SUM(quantity_bought ) as SumAmount FROM yourTable Group By album_ID
.2. Если приведенный выше комментарий не является решением, пожалуйста, уточните, что вы подразумеваете под «объединением». Вы хотите изменить данные в таблице?
Ответ №1:
WITH
-- your input
sold(album_id,qty_bought) AS (
SELECT 1,10
UNION ALL SELECT 2, 5
UNION ALL SELECT 1, 4
)
SELECT
album_id
, SUM(qty_bought) AS quantity_bought
FROM sold
GROUP BY album_id;
album_id|quantity_bought
1| 14
2| 5