Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Ansicht wird nicht ausgeführt – Percentile_cont

Das ist ein bisschen lang für einen Kommentar.

SQL Server hat eine Alternative zu Ansichten, die benutzerdefinierte Funktionen . Insbesondere können Sie eine UDF haben, die Folgendes tut:

  • Es braucht Parameter.
  • Es gibt eine Tabelle zurück.
  • Es ist wie eine Ansicht eingebettet (das heißt, der "Code" wird im Wesentlichen in die Abfrage eingefügt, aber es ist etwas komplizierter).

Ich betrachte sie als "parametrisierte Ansichten".

Mein Vorschlag ist, dass Sie eine benutzerdefinierte Tabellenwert-Inline-Funktion erstellen, die die Parameter verwendet, die Sie in WHERE einfügen würden Klausel.

Die grundlegende Syntax in Ihrem Fall lautet:

CREATE FUNCTION ufn_sales_stats (
    @compid int,
    @target_date date
)  RETURNS TABLE  
AS  
RETURN (  <your parameterized query here> );