Welcome to Our Website

MySQL UNION (Svenska)

sammanfattning: i den här handledningen lär du dig hur du använder MySQL UNION operatör för att kombinera två eller flera resultatuppsättningar från flera SELECT uttalanden till en enda resultatuppsättning.

MySQL UNION operator

MySQLUNION operatör kan du kombinera två eller flera resultatuppsättningar av frågor till en enda resultatuppsättning., Följande illustrerar syntaxen förUNION – operatören:

för att kombinera resultatuppsättningen av två eller flera frågor med hjälp avUNION – operatören måste det här vara de grundläggande reglerna som du måste följa:

  • först måste antalet och orderna för kolumner som visas i alla SELECT – satser vara desamma.
  • för det andra måste datatyperna av kolumner vara desamma eller kompatibla.,

som standard tarUNION – operatören bort dubbla rader även om du inte angerDISTINCT – operatören explicit.,

låt oss se följande exempeltabeller:t1 ocht2:

följande uttalande kombinerar resultatuppsättningar som returneras frånt1 ocht2 tabeller:

Code language: SQL (Structured Query Language) (sql)

den slutliga resultatuppsättningen innehåller de distinkta värdena från separata resultatuppsättningar som returneras av frågorna:

Code language: SQL (Structured Query Language) (sql)

eftersom raderna med värde 2 och 3 är dubbletter, togUNION bort dem och behöll endast unika värden.,

följande Venn-diagram illustrerar en union av två resultatuppsättningar som kommer från t1 och t2 tabeller:

Om du inte vill ha mer information, kan du läsa mer om använd UNION ALL explicit, de dubbla raderna, om de är tillgängliga, förblir i resultatet. EftersomUNION ALL inte behöver hantera dubbletter, fungerar det snabbare änUNION DISTINCT .,

Code language: SQL (Structured Query Language) (sql)
Code language: SQL (Structured Query Language) (sql)

som du kan se visas dubbletterna i den kombinerade resultatuppsättningen på grund av funktionen UNION ALL.

UNION vs. JOIN

aJOIN kombinerar resultatuppsättningar horisontellt, aUNION lägger resultatet vertikalt.,ple-databas för demonstrationen:

Antag att du vill kombinera medarbetarnas och kundernas förnamn och efternamn till en enda resultatuppsättning, kan du använda operatören UNION enligt följande:

Code language: SQL (Structured Query Language) (sql)

som du kan se från utdata använder MySQL UNION kolumnnamnen på det första SELECT – uttalandet för kolumnrubrikerna av utgången.,

om du vill använda andra kolumnrubriker måste du använda kolumnalias uttryckligen i det första SELECT – uttalandet som visas i följande exempel:

det här exemplet använder kolumnrubriken i den första frågan för utmatningen. Den använder funktionenCONCAT() för att sammanfoga förnamn, utrymme och efternamn till ett fullständigt namn.,

MySQL UNION och ORDER BY

om du vill sortera resultatuppsättningen för en union använder du en ORDER BY – klausul i den sista SELECT – sats som visas i följande exempel:

Lägg märke till att om du placerar ORDER BY – klausulen i varje SELECT – sats kommer den inte att påverka ordningen på raderna i den slutliga resultatuppsättningen.,

för att skilja mellan anställda och kunder kan du lägga till en kolumn som visas i följande fråga:

MySQL ger dig också ett alternativ för att sortera ett resultatuppsättning baserat på kolumnposition med hjälp av ORDER BY – klausulen enligt följande:

det är dock inte en god praxis att sortera resultatet som anges efter kolumnposition.

i den här guiden har du lärt dig hur du använder MySQL UNION uttalande för att kombinera data från flera frågor till en enda resultatuppsättning.,

  • var den här handledningen till hjälp?
  • YesNo

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *