MySQL MariaDB

MySQL Kombinera strängkolumner med CONCAT-funktion

MySQL Kombinera strängkolumner med CONCAT-funktion
Sammankoppling av strängar i MySQL hjälper en att lägga till en sträng i slutet av en annan. Att sammanfoga sträng- eller databankfält till ett ensamt fält inom resultatuppsättningen är möjligt med MySQL: s stränghanteringsmetoder. När du använder MySQL CONCAT eller CONCAT WS-metoderna i denna guide kommer du att upptäcka olika sätt att sammanfoga två eller flera strängar samtidigt.

Öppna MySQL-kommandoradsklienten från applikationerna och lägg till ditt lösenord när du frågar.

Exempel 01: Sammankoppla två kolumner med CONCAT

Vi har en tabell "lärare" i databasen "data". Vi vill associera dess strängar från två kolumner "TeachName" och "efternamn" utan ett mellanslag mellan dem.

Utför kommandot SELECT CONCAT med kolumnnamn inom parentes åtskilda av ett komma. Den nya kolumnen "Namn" genereras för att lagra de sammanhängande strängvärdena i den och resultatet visas nedan.

>> VÄLJ CONCAT (TeachName, efternamn) AS Name FROM data.lärare;

Exempel 02: Sammankoppla två kolumner med mellanslag

Anta att vi har nedanstående tabell "student" i databasen "data" och vi vill kombinera dess strängar från två kolumner "Namn" och "Ämne" med mellanslag mellan värdena.

Använd kommandot SELECT CONCAT nedan medan du anger namnen på kolumner inom parentes för att kombinera strängvärden åtskilda av ett mellanslag. De sammanhängande värdena sparas i en ny kolumn, ”StudentDetail.”Den resulterande kolumnen har alla sammanhängande strängar nu.

>> VÄLJ CONCAT (Namn, ", Ämne) SOM StudentDetail FRÅN data.studerande;

Exempel 03: Sammankoppla flera kolumner med specialtecken

Låt oss anta nedanstående tabell "lärare" för att sammanfoga strängvärden från mer än två kolumner med olika specialtecken.

Försök med kommandot nedan medan du lägger till '-' tecknet istället för mellanslag. Den resulterande uppsättningen har den sammanhängande strängkolumnen från tabellkolumnerna med specialtecken som används i den.

>> VÄLJ KONCAT (TeachName, '-', subject, '-', kvalifikation) SOM Detaljer FRÅN data.lärare;

Exempel 04: Sammankoppla medan ytterligare kolumner hämtas

Om du vill sammanfoga kolumnsträngarna medan du hämtar andra kolumner i samma fråga är du på rätt plats. Tänk på tabellen "djur" i databasen "data" nedan.

Vi har sammanfogat dess tre kolumner; "Färg", "Namn" och "Kön" när du använder mellanslag och specialtecken däremellan. Den sammanhängande strängen från dessa kolumner kommer att sparas i en ny kolumn, "AnimData". Å andra sidan har vi fått tillgång till posterna för andra kolumner "Pris" och "Ålder" från denna tabell. Posterna kommer att hämtas från de rader där könen på djuren är "M" betyder endast för män. Du har resultaten av sammanhängande strängar från olika kolumner liksom andra kolumner som har visats separat.

>> VÄLJ KONCAT (Färg, ", Namn, '-', Kön) AS AnimData, Pris, Ålder FRÅN data.djur VAR Kön = 'M';

Exempel 05: Sammankoppla fler strängar med kolumnsträngar

Om du vill lägga till strängar istället för specialtecken eller mellanslag kan du göra det också. Så, låt oss ha ett enkelt exempel på att göra detta. Antag att du har en tabell "bok" och att du har nedanstående uppgifter om böcker, deras priser, författare, volymer och sidor som visas på bilden. Nu kommer vi att sammanställa strängarna från kolumnen "Namn", "Författare" och "Pris" med hjälp av denna tabell.

Vi har använt SELECT CONCAT-uttalandet för att sammanfoga strängar från de tre kolumnerna. All data i denna tabell sorteras först i stigande ordning i kolumnen "Namn". Inom parentes har vi tillhandahållit "Boken", "skrev av" och "har pris" som extra strängar istället för mellanslag eller specialtecken inom inverterade komma. Nu tar CONCAT-funktionen det första inverterade kommavärdet "Boken" tillsammans med värdet från kolumnen "Namn", sedan det andra inverterade kommavärdet "skrivet av" följt av kolumnen "Författare" strängvärde och slutligen det tredje inverterat kommavärde "har pris" följt av värdet i kolumnen "Pris". Alla dessa strängar och värden från kolumnerna kommer att kombineras och det kommer att göra en fullfjädrad mening. Denna helt nya mega-strängsats kommer att lagras i den nya kolumnen "BookDetail".

>> VÄLJ KONCAT ('Boken', Namn, 'skrev av', Författare, 'har pris', Pris) SOM BookDetail FRÅN data.bok BESTÄLL EFTER Namn ASC;

Exempel 06: Sammankoppla kolumnsträngar med CONCAT_WS

CONCAT_WS verkar vara en unik variant av CONCAT-funktionen som låter dig ange vilken symbol (eller tecken) som skulle avvisas som en avdelare angående strängkonkateringen. Det är lika enkelt som den enkla CONCAT-funktionen. Så, låt oss överväga tabellen "social" i MySQL-databasen med värden om användarna, deras mest använda sociala medieapplikationer och användarnas åldrar. Nu kommer vi att utföra sammankopplingen med CONCAT_WS-funktionen.

I frågan nedan har vi sammanfogat tre kolumner och lagrat detta sammanfogade resultat i kolumnen "Detalj". Som du kan se är det något annat eftersom vi har definierat några specialtecken "***" i de inverterade kommorna före kolumnnamnen. Detta beror på att vi vill lägga till dessa specialtecken mellan strängarna i kolumnerna och kommer en efter en med CONTACT_WS-funktionen. Från det här scenariot är det uppenbart att vi inte behöver lägga specialtecken i frågan efter varje angiven kolumn när det gäller samma typ av tecken.

>> VÄLJ CONCAT_WS ('***', användare, webbplats, ålder) SOM detalj från data.social;

Slutsats:

Du lär dig nu effektivt alla viktiga saker om sammankoppling av strängkolumner och deras värden med den enkla CONCAT-funktionen och CONCAT_WS-funktionen i MySQL Shell.

Mus Hur man använder Xdotool för att stimulera musklick och tangenttryckningar i Linux
Hur man använder Xdotool för att stimulera musklick och tangenttryckningar i Linux
Xdotool är ett ledigt verktyg för öppen källkod för simulering av musklick och tangenttryckningar. Den här artikeln kommer att täcka en kort guide om ...
Mus Topp 5 Ergonomiska datormusprodukter för Linux
Topp 5 Ergonomiska datormusprodukter för Linux
Ger långvarig datoranvändning smärta i handleden eller fingrarna? Lider du av styva leder och måste ständigt skaka hand? Känner du en brännande smärta...
Mus Så här ändrar du inställningar för mus och pekplatta med Xinput i Linux
Så här ändrar du inställningar för mus och pekplatta med Xinput i Linux
De flesta Linux-distributioner levereras med "libinput" -bibliotek som standard för att hantera inmatningshändelser i ett system. Den kan bearbeta inm...