4116: Für die ntile-Funktion ist nur ein positiver Ausdruck vom Typ 'int' oder 'bigint' als Eingabe
Fehlermeldung:
Meldung 4116, Ebene 15, Status 1, Zeile 1
Für die ntile-Funktion ist nur ein positiver Ausdruck vom Typ 'int' oder 'bigint' als Eingabe möglich.
Ebene:
15.
Beschreibung:
Diese Fehlermeldung erscheint, wenn man versucht die NTILE Fensterfunktion mit einem ungültigen Ausdruck zur Gruppenanzahl aufzurufen.
Auswirkungen:
Das SQL Statement kann zwar geparst werden, jedoch zur Laufzeit wird der Fehler ausgelöst.
Behebung:
Fehler der Ebene 15 sind Fehler, die vom Anwender hervorgerufen werden. Sie können und müssen vom Anwender korrigiert werden. Das Statement kann so nicht ausgeführt werden. Der Ausdruck muss korrigiert werden, so dass er eine positive Ganzzahl ergibt.
Versionen:
Diese Fehlermeldung wurde mit SQL Server 2005 eingeführt.
Beispiele:
USE tempdb;
GO
IF OBJECT_ID('tempdb..#t') > 0
DROP TABLE #t
GO
CREATE TABLE #t
(
id INT
)
INSERT INTO #t SELECT 10
GO
SELECT NTILE(0) OVER(ORDER BY ID) AS rid, id
FROM #t
GROUP BY id
Anmerkungen:
Im obigen Beispiel wird versucht die NTILE Fensterfunktion mit dem ungültigen Ausdruck 0 aufzurufen. Dies löst den Fehler aus.