El procedimiento almacenado devuelve conjuntos de resultados múltiples
Necesito un SP para devolver múltiples conjuntos de resultados. El segundo conjunto de resultados se basaría en una columna del primer conjunto de resultados.
Entonces:
declare @myTable1 table(field0 int,field1 varchar(255))
insert into @myTable1 select top 1 field0, field1 from table1
declare @myTable2 table(field0 int,field3 varchar(255))
insert into @myTable2
select field0, field3 from table2
where @myTable1.field0 = @myTable2.field0
¿Cómo devuelvo @ myTable1 y @ myTable2 con mi SP? ¿Es esta sintaxis incluso correcta?
Mis disculpas, todavía soy un novato en SQL ...
EDITAR:
Entonces, recibo un error en la última línea del código a continuación que dice: "Debe declarar la variable escalar" @ myTable1 ""
declare @myTable1 table(field0 int,field1 dateTime)
insert into @myTable1
select top 1 field0, field1
from someTable1 m
where m.field4 > 6/29/2009
select * from @myTable1
select *
from someTable2 m2
where m2.field0 = @myTable1.field0
Si destaco y ejecuto el código hasta el segundoselect *
funciona bien ... cuando resalto el resto, actúa como si la primera variable no existiera ...
EDIT2: Resolví ese problema. Gracias chicos.
declare @myTable1 table(field0 int,field1 dateTime)
insert into @myTable1
select top 1 field0, field1
from someTable1 m
where m.field4 > 6/29/2009
select * from @myTable1
select *
from someTable2 m2
where m2.field0 = (select field0 from @myTable1)