sql >> Database >  >> RDS >> Sqlserver

Opgeslagen procedure retourneert meerdere resultaatsets

Je selecteert eigenlijk gewoon twee resultatensets

SELECT * FROM @myTable1
SELECT * FROM @myTable2

Sommige tools zullen echter sommige resultaten verbergen (bijv. pgAdmin toont alleen de laatste) en sommige tools hebben een soort vereiste om naar de volgende resultatenset te gaan (bijv. .NET's IDataReader's staan ​​u niet toe om Read() vanaf de tweede resultatenset totdat je NextResult() . aanroept ).

Bewerken:

Een alternatief in dit geval, aangezien de typen van de twee resultaten overeenkomen, is om ze te combineren in een enkele resultatenset:

SELECT field0, field1 from @myTable1
UNION
SELECT field0, field3 from @myTable2

U kunt ook kiezen tussen UNION ALL of UNION DISTINCT (de standaardinstelling) waarbij de laatste alleen rijen verzendt die geen herhalingen zijn.



  1. Koppeling naar Salesforce-gegevens in Microsoft Access

  2. MongoDB lees-/schrijfvergrendelingen

  3. MySQL-aggregatie per maand met lopend totaal

  4. Mysq- Verbinding hoe in te stellen om Arabische tekst in de database te kunnen invoegen