Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к:SQL Server
База данных
SQL AzureУправляемый экземпляр
SQL AzureAzure Synapse Analytics
Система платформы аналитики (PDW)
Конечная точка аналитики SQL в Microsoft Fabric
Хранилище в Microsoft Fabric
База данных SQL в предварительной версии Microsoft Fabric
Возвращает остаток от деления одного числа на другое.
Соглашения о синтаксисе Transact-SQL
Syntax
dividend % divisor
Arguments
dividend
Делимое числовое выражение. Аргумент dividend должен быть допустимым выражением любого типа из категорий целочисленных или денежных типов данных или типа numeric.
divisor
Числовое выражение, по которому необходимо разделить дивиденды. Аргумент divisor должен быть допустимым выражением любого типа из категорий целочисленных или денежных типов данных или типа numeric.
Result types
Определяются типами данных обоих аргументов.
Remarks
Можно использовать арифметический оператор модула в списке SELECT
выбора инструкции с любым сочетанием имен столбцов, числовых констант или любого допустимого выражения категорий целочисленных и денежных типов данных или числовых типов данных.
Examples
Примеры кода в этой статье используют базу данных образца AdventureWorks2022
или AdventureWorksDW2022
, которую можно скачать с домашней страницы образцов и проектов сообщества Microsoft SQL Server и.
A. Basic example
В следующем примере число 38
делится на 5
. Результат является 7
целочисленной частью результата и демонстрирует, как модуло возвращает оставшуюся часть 3
.
SELECT
38 / 5 AS [Integer],
38 % 5 AS [Remainder];
B. Пример с использованием столбцов в таблице
Следующий пример возвращает код продукта, цену единицы модуля продукта и остаток от деления цены каждого продукта, преобразовывает к целому значению, в количество заказанных продуктов.
SELECT TOP (100) ProductID,
UnitPrice,
OrderQty,
CAST((UnitPrice) AS INT) % OrderQty AS Modulo
FROM Sales.SalesOrderDetail;
GO
Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)
C: базовый пример
В следующем примере показаны результаты для %
оператора при делении 3
на 2
.
SELECT TOP(1) 3 % 2
FROM DimEmployee;
Вот результирующий набор.
1