кодесурса
«SQLite

Функция SQLite sum ()

script1adsense2code
script1adsense3code

Описание

Агрегатные функции sum () и total () возвращают сумму всех ненулевых значений в группе. Если нет входных строк, отличных от NULL, то sum () возвращает NULL, а total () возвращает 0.0. NULL обычно не является полезным результатом для суммы без строк, но стандарт SQL требует этого, и большинство других механизмов баз данных SQL реализуют sum () таким образом, чтобы SQLite делал это таким же образом, чтобы быть совместимым. Нестандартная функция total () предоставляется в качестве удобного способа обойти эту проблему проектирования на языке SQL.

Результатом total () всегда является значение с плавающей запятой. Результатом sum () является целочисленное значение, если все ненулевые входные значения являются целыми числами. Если какой-либо вход для sum () не является ни целым числом, ни NULL, то sum () возвращает значение с плавающей запятой, которое может быть приближением к истинной сумме.

sum () будет генерировать исключение «переполнение целочисленного значения», если все входные данные являются целыми числами или NULL, и переполнение целого числа происходит в любой точке во время вычисления. total () никогда не выбрасывает целочисленное переполнение.

Синтаксис

 сумма (выражение);
Общий (выражение);

Где expr это выражение.

Ключевое слово DISTINCT может использоваться для суммирования только различных значений expr.

Пример: функция SQLite sum ()

Следующий оператор SQLite возвращает сумму «total_cost» из таблицы покупок.

Пример таблицы: покупка


Пример вывода:

 sqlite> SELECT SUM (total_cost)
 ...> С покупки;
 СУММА (total_cost)
 ---------------
 3590 

Пример: сравнение SQLite sum () и total ()

Следующие операторы SQLite возвращают сумму «total_cost» из таблицы покупок для категории («cate_id») с использованием функций sum () и total ().

Пример таблицы: покупка


Используя sum (), он возвращает NULL.

Пример вывода:

 sqlite> SELECT SUM (total_cost)
 ...> ОТ покупки
 ...> ГДЕ cate_id = 'CD001';
 СУММА (total_cost)
 ---------------

Используя total (), он возвращает 0.0.

Пример вывода:

 sqlite> SELECT total (total_cost)
  ...> ОТ покупки
  ...> ГДЕ cate_id = 'CD001';
  Общий (total_cost)
  -----------------
  0.0
 ---------------
 

Пример: функция SQLite sum (), использующая несколько столбцов

Функция SQLite sum () извлекает значение суммы выражения, которое состоит из нескольких столбцов. Следующий оператор SQLite возвращает сумму умножения 'receive_qty' и 'purchase_price' из таблицы покупок для каждой группы категории ('cate_id').

Пример таблицы: покупка


Код

Пример вывода:

 sqlite> SELECT cate_id,
  ...> SUM (receive_qty * purchase_price)
  ...> ОТ покупки
  ...> GROUP BY cate_id;
  cate_id SUM (receive_qty * purchase_price)
  ---------- ----------------------------
  CA001 1725
  CA002 965
  CA003 900

Пример: функция SQLite sum () с функцией count () и переменными

Следующий оператор SQLite вернет сумму «mysum», временной переменной, которая подсчитывает количество книг, содержащих более 200 страниц из таблицы «book_mast».

Пример таблицы: book_mast


 sqlite> ВЫБЕРИТЕ СУММУ (mysum)
  ...> ОТ (
  ...> ВЫБЕРИТЕ СЧЕТ (*) AS mysum
  ...> ОТ book_mast
  ...> WHERE no_page> 200) AS bb;
  СУММА (mysum)
  ----------
  14 

Пример вывода:

 Пример: функция SQLite sum () с предложением DISTINCT 

Функция SQLite sum () извлекает сумму уникального значения выражения, если оно сопровождается предложением DISTINCT . Следующий оператор SQLite возвращает сумму количества ветвей ('no_of_branch') из таблицы издателя, где, если несколько издателей имеют одинаковое количество ветвей, это число (то есть количество ветвей) берется только один раз.

Пример таблицы: издатель


Код

Пример вывода:

 sqlite> SELECT SUM (DISTINCT no_of_branch)
  ...> ОТ издателя;
  SUM (DISTINCT no_of_branch)
  --------------------------
  64 

Пример: функция SQLite sum () с предложением GROUP BY

Функция SQLite sum () извлекает значение суммы выражения, которое подверглось операции группировки по предложению GROUP BY. Следующий оператор SQLite возвращает сумму «total_cost» из таблицы покупок для каждой группы категории («cate_id»).

Пример таблицы: покупка


Пример вывода:

 sqlite> SELECT cate_id, SUM (total_cost)
  ...> ОТ покупки
  ...> GROUP BY cate_id;
  cate_id SUM (total_cost)
  ---------- ---------------
  CA001 1725
  CA002 965
  CA003 900 

Предыдущая: Мин ()
Далее: Базовая функция SQLite abs ()

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code