Meine erste Tabelle bewertet Funktion und Cursor

Ich habe diese Frage:

SELECT name, lastname
FROM contestant 
WHERE  name= 'John'  AND lastname = 'Smith'

Ich erhalte mehrere Ergebnisse aus der obigen Abfrage und muss sie für die folgende Abfrage verwenden:

SELECT  name, lastname,prize, city 
FROM draw
WHERE  name= name from table contestant  AND lastname= name from table contestant  

Jetzt erstelle ich eine Tabellenwertfunktion mit einem Cursor und einem WHILE, damit ich eine Tabelle mit den Ergebnissen haben kann.

Hier ist mein Versuch, können Sie mir bitte helfen, ihn zu vervollständigen? Es wird mir sehr hilfreich sein, dieses TSQL-Kapitel zu verstehen. Vielen Dank!

CREATE FUNCTION [dbo].[myFunction]
(
    @name varchar (44),
    @lastname varchar (44) 
)
RETURNS 
@tmpTable TABLE 
(   
    name char(44),
    lastname char(44),
    prize varchar(44),
    city char(44)

)
AS
BEGIN

    DECLARE 
/* what do I have to input here */

    DECLARE myCursor CURSOR FOR

SELECT name, lastname
FROM contestant 
WHERE  name= @name  AND lastname = @lastname

    OPEN myCursor

    FETCH NEXT FROM myCursor INTO  /* what goes here?*/



    WHILE (@@FETCH_STATUS = 0) 
    BEGIN

 -- and here? 

        FETCH NEXT FROM myCursor INTO /* what goes here?*/


    END /*WHILE*/

    CLOSE myCursor
    DEALLOCATE myCursor


    INSERT INTO @tmpTable (name, lastname,prize, city)
    SELECT name, lastname,prize, city 
        FROM prize
        WHERE name = @name AND lastname = @lastname

    RETURN
END

Antworten auf die Frage(1)

Ihre Antwort auf die Frage