Ich bin neu in SQL und versuche, eine Variable aus dem Wert von einer Funktion Wert zuweisen, aber ich bin nicht in der Lage, den Wert zu erhalten.Verwenden einer Zeichenfolge zum Abrufen einer Spalte aus einer Funktion
Meine Frage ist:
DECLARE @StartDate DATETIME,@ReferenceDateString VARCHAR(10)='Q1_CY' ;
Select @[email protected] from dbo.Dates(GETDATE());
Wenn ich die obige Abfrage laufen bekomme ich nur den Wert Q1_CY
assgined zu @StartDate
eher als der tatsächliche Wert aus der Funktion.
Wenn ich nicht eine Variable dann sieht verwenden möchte meine Abfrage wie:
Select @StartDate=Q1_CY from dbo.Dates(GETDATE());
Gibt es eine Möglichkeit, es zu tun?
Sie können versuchen, 'SET @StartDate = SELECT ....'. – FDavidov
Dazu müssen Sie dynamisches SQL verwenden. Wenn Sie SQL lernen, überspringen Sie dies und gehen Sie zu etwas anderem über, bis Sie mit der Sprache vertrauter sind. –
@GordonLinoff können Sie bitte das Dynamic SQL posten, so dass ich es verstehen und ausprobieren kann, da ich völlig neu in SQL bin, aber neu in Dynamic SQL bin. –