Выполнение вычислений в запросах
Выполнение вычислений в запросах
В строках запроса допускается выполнение вычислений. Для этого нужно просто заменить имя поля в предложении SELECT именем арифметического выражения. Допустим, вам нужно создать запрос для вычисления налога с продаж для складских запасов (сведения о которых хранятся в таблице tblItem). В приведенном ниже запросе SQL вычисляется налог с продаж с учетной ставкой 7,5% для каждого товара.
SELECT ID, Item, Price, Price * 0.075 AS SalesTax
FROM tblItem
После выполнения этого запроса будут получен показанный ниже результат.
ID Name Price SalesTax 1 Rubber Chicken 5.99 0.44925 2 Hand Buzzer 1.39 0.10425 3 Stink Bomb 1.29 0.09675 4 Disappearing Penny Magic Trick 3.99 0.29925 5 Invisible Ink 2.29 0.17175 6 Loaded Dice 3.49 0.26175 7 Whoopee Cushion 5.99 0.44925Поскольку в этих вычислениях фигурируют деньги, конечный результат нужно округлить до двух десятичных знаков. К счастью, в SQL Server для этого предусмотрена специальная функция ROUND, которая позволяет очень легко выполнить это. Обычно ее используют с указанием двух параметров: собственно десятичного числа и точности, выраженной в виде количества знаков после запятой. Вот как выглядит запрос с функцией ROUND:
SELECT Name, Retail Price, ROUND (Retail Price + Retail Price * 0.075, 2)
AS PriceWithTax
FROM tblInventory
Результат выполнения этого запроса приведен ниже.
Name Retail Price PriceWithTax Rubber Chicken 5.99 6.44 Hand Buzzer 1.39 1.49 Stink Bomb 1.29 1.39 Disappearing Penny Magic Trick 3.99 4.29 Invisible Ink 2.29 2.46 Loaded Dice 3.49 3.75 Whoopee Cushion 5.99 6.44Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
if - Выполнение или не выполнение предложений в зависимости от условий
if - Выполнение или не выполнение предложений в зависимости от условий ifПозволяет выполнить или не выполняет определенные предложения в зависимости от заданного условияСинтаксис:if (condition) { statements}Аргументы:В целом, предложение if завершается закрывающей фигурной скобкой
20. Квадратный трехчлен, или Пакет Для Алгебраических Вычислений
20. Квадратный трехчлен, или Пакет Для Алгебраических Вычислений Основная трудность, с которой сталкивается программист в большинстве языков программирования, — необходимость при записи вычислений разбивать свои уравнения на мелкие части. Так, если требуется
12. Кодирование параллельных вычислений
12. Кодирование параллельных вычислений РезюмеЕсли ваше приложение использует несколько потоков или процессов, следует минимизировать количество совместно используемых объектов, где это только можно (см. рекомендацию 10), и аккуратно работать с
31. Не пишите код, который зависит от порядка вычислений аргументов функции
31. Не пишите код, который зависит от порядка вычислений аргументов функции РезюмеПорядок вычисления аргументов функции не определен, поэтому никогда не полагайтесь на то, что аргументы будут вычисляться в той или иной очередности.ОбсуждениеНа начальных этапах развития
5.3. Выполнение вычислений с датами и временем
5.3. Выполнение вычислений с датами и временем ПроблемаТребуется узнать количество времени, прошедшего между двумя точками даты/времени.РешениеЕсли обе временные точки находятся между 1970 и 2038 годами, то используйте тип time_t и функцию difftime, определенную в заголовочном
Предикаты OR в запросах
Предикаты OR в запросах Если вы ожидаете для таблицы частого выполнения запросов, которые используют оператор OR, то лучше создать индексы из одного столбца для каждого условия. Поскольку индексы из нескольких столбцов упорядочены иерархически, запрос, который использует
Двусмысленность в запросах JOIN
Двусмысленность в запросах JOIN В различных книгах по теории баз данных сказано, что двусмысленность может существовать, только когда некоторые имена столбцов появляются в нескольких потоках. Человек, практически работающий с базами данных, может рассказать другую
Выполнение восстановления
Выполнение восстановления Синтаксис восстановления базы данных из копии следующий.POSIX:$] ./gbak {-c[reate] | -r[eplace_database] } <режимы> исходная-копия база-данных или$] /opt/firebird/bin/gbak {-c[reate] | -r[eplace_database] } <режимы> исходная-копия база-данныхWindows:C:Program FilesFirebirdFirebird_1_5in> {-c[reate] | -r[eplace database]
Забудьте о запросах функций
Забудьте о запросах функций Пусть клиенты напоминают вам, что важноКлиенты хотят, чтобы все было. Они будут присылать вам лавину запросов на новые функции. Просто проверьте форумы наших продуктов.«Мы знаем, что это легко добавить» или «это можно сделать чуть лучше» или
4.6. Выполнение разрезов
4.6. Выполнение разрезов Рассмотрим особенности выполнения задания 6, которое ориентировано на применение знаний ГОСТа 2.305-68, 2.311-68, 2.316-68. Тематический блок по указанной теме включает 4 задачи по дочерчиванию изображений деталей. Для графического выполнения этих задач
Объектно-ориентированный стиль вычислений
Объектно-ориентированный стиль вычислений Обратимся теперь к фундаментальным свойствам класса POINT и попытаемся понять, как устроено типичное тело подпрограммы и составляющие его инструкции. Далее выясним, каким образом класс и его компоненты могут использоваться
Повторение вычислений
Повторение вычислений Инструкция повторного выполнения рассматривалась при обсуждении исключительных ситуаций (лекция 12). Она появляется только в предложении rescue, повторно запуская тело подпрограммы, работа которой была
Основные сведения о запросах
Основные сведения о запросах Запросы являются одним из основных объектов любой базы данных и используются для отбора данных, расчетов и других операций. Чаще всего используются запросы на выборку, с помощью которых можно выбрать данные из одной или нескольких связанных