wake-up-neo.net

'MOD' ist kein erkannter eingebauter Funktionsname

Ich wollte die Funktion MOD in SQL Server 2008R2 verwenden und folgte diesem link , erhielt aber immer noch die Meldung: 

'MOD' ist kein erkannter eingebauter Funktionsname.

DECLARE @m INT
SET @m = MOD(321,11)
SELECT @m

Error:

Meldung 195, Ebene 15, Status 10, Zeile 2
'MOD' ist kein erkannter eingebauter Funktionsname.

Warum kann ich diese Funktion nicht über den Link oben verwenden?

23
hoggar

Das Schlüsselwort MOD existiert nur in der Sprache DAX (tabellarische Dimensionsabfragen), nicht TSQL.

Verwenden Sie stattdessen %.

Ref: Modulo

53
Mitch Wheat

In TSQL erfolgt das Modulo mit einem Prozentzeichen. 

SELECT 38% 5 würde Ihnen das Modulo 3 geben

4
Karl Kruse

für Ihre genaue Probe sollte es so sein. 

DECLARE @m INT
SET @m = 321%11
SELECT @m
1
Anura Adhikari

Dies kann mit dem Operator% geschehen D. . SELECT 50% 5 

0