Salve, non so se scrivo nella sezione giusta
Dunque, dovrei fare una query un pò particolare, per iniziare ne ho fatta una con T-Sql che più avanti mi farà arrivare a quella finale, quindi se notate che l'eventuale risultato si poteva ottenere con una semplice query è solo perché questa fatta così mi serve per sperimentare
Ecco l'esempio.
codice:
SET NOCOUNT ON
DECLARE @login varchar(50)
DECLARE cursore CURSOR FOR
select distinct utente
from tabella_prodotti with (nolock)
OPEN cursore
FETCH NEXT FROM cursore
INTO @login
WHILE @@FETCH_STATUS = 0
BEGIN
select cognome,nome from tabella_utenti where login=@login;
FETCH NEXT FROM cursore
INTO @login
END
CLOSE cursore
DEALLOCATE cursore
Questa sintassi genera un serie si select separate composte da un'unica riga, quello che vorrei ottenere invece è una sola tabella che contiene tutte le righe generate da questa procedura.
avevo tentato con questo:
codice:
SET NOCOUNT ON
DECLARE @login varchar(50)
DECLARE cursore CURSOR FOR
select distinct utente
from tabella_prodotti with (nolock)
OPEN cursore
FETCH NEXT FROM cursore
INTO @login
IF @@FETCH_STATUS = 0
BEGIN
select cognome,nome from tabella_utenti where login=@login;
FETCH NEXT FROM cursore
INTO @login
END
WHILE @@FETCH_STATUS = 0
BEGIN
union
select cognome,nome from tabella_utenti where login=@login;
FETCH NEXT FROM cursore
INTO @login
END
CLOSE cursore
DEALLOCATE cursore
Ma mi ha fatto il gesto dell'ombrello (errore su union).
Avete qualche suggerimento?
Grazie