Database
 sql >> база данни >  >> RDS >> Database

Как да умножите две колони в SQL

Проблем:

искате да умножите стойности от две колони на таблица.

Пример:

Нашата база данни има таблица с име purchase с данни в следните колони:id , name , price , quantity и discount_id .

id име цена количество discount_id
1 писалка 7 3 1
2 бележник 5 8 2
3 гума 11 3 1
4 моливник 24 2 3

Нека умножим цената по количеството на продуктите, за да разберем колко сте платили за всеки артикул от поръчката си.

Решение:

SELECT name,
 price*quantity  AS total_price
FROM purchase;

Тази заявка връща записи с името на продукта и общата му цена:

name обща_цена
химикалка 21
бележник 40
гума 33
моливник 48

Дискусия:

Трябва ли да изберете името на всеки запис (в нашия случай name ) и изчислете за него резултата от умножаването на една числова колона по друга (price и quantity )? Всичко, което трябва да направите, е да използвате оператора за умножение (*) между двете колони за умножение (price * quantity ) в прост SELECT запитване. Можете да дадете псевдоним на този резултат с AS ключова дума; в нашия пример дадохме на колоната за умножение псевдоним на total_price .

Имайте предвид, че можете също да използвате данни от две колони, идващи от различни таблици. Имаме друга таблица в нашата база данни с име discount който има колони с име id и value; последното представлява процентната отстъпка за артикула с дадения идентификатор.

id стойност
1 10
2 20
3 30

Вижте примера по-долу.

Решение:

SELECT p.name, 
 p.price*p.quantity*(100-d.value)/100  AS total_price
FROM purchase p
JOIN discount d ON d.id=p.discount_id;

Ето резултата:

name обща_цена
химикалка 18,90
бележник 32,00
гума 29,70
моливник 33,60

Както можете да видите, е доста лесно да умножите стойности от различни обединени таблици. В нашия пример по-горе умножихме цената на всеки продукт по неговото количество от една таблица (purchase ) и след това умножете тази обща цена по процента отстъпка, като използвате discount таблица.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Обосноваване на новия Mac Pro

  2. Премахване на проследяващи файлове с ADRCI

  3. Основи на табличните изрази, част 13 – Вградени функции с таблично стойности, продължение

  4. Съхранение на заявки:Показване на въздействието на индексите върху вложките

  5. Как работи индексирането