MySQL MariaDB

MySQL Combineer stringkolommen met CONCAT-functie

MySQL Combineer stringkolommen met CONCAT-functie
Aaneenschakeling van strings in MySQL helpt iemand om de ene string toe te voegen aan het einde van een andere. Het samenvoegen van string- of databankvelden tot een enkel veld binnen de resultatenset is mogelijk met de stringbeheermethoden van MySQL. In deze handleiding zult u, terwijl u de MySQL CONCAT- of CONCAT WS-methoden gebruikt, verschillende manieren ontdekken om twee of meer strings tegelijkertijd aan elkaar te koppelen.

Open de MySQL-opdrachtregelclientshell vanuit de applicaties en voeg uw wachtwoord toe wanneer u daarom vraagt.

Voorbeeld 01: Twee kolommen samenvoegen met CONCAT

We hebben een tabel 'leraar' in de database 'gegevens'. We willen de strings van twee kolommen "TeachName" en "lastname" associëren zonder een spatie ertussen.

Voer de opdracht SELECT CONCAT uit met kolomnamen tussen haakjes gescheiden door een komma. De nieuwe kolom 'Naam' wordt gegenereerd om de aaneengeschakelde tekenreekswaarden erin op te slaan en het resultaat wordt hieronder weergegeven:.

>> SELECTEER CONCAT (TeachName, achternaam) AS Name FROM data.leraar;

Voorbeeld 02: Twee kolommen samenvoegen met spatie

Stel dat we de onderstaande tabel "student" in de database "data" hebben en we willen de strings van twee kolommen "Naam" en "Onderwerp" combineren met spatie tussen de waarden.

Gebruik de onderstaande opdracht SELECT CONCAT terwijl u de namen van kolommen tussen haakjes opgeeft om de tekenreekswaarden te combineren, gescheiden door een spatie. De aaneengeschakelde waarden worden opgeslagen in een nieuwe kolom, "StudentDetail.” De resulterende kolom heeft nu alle aaneengeschakelde strings.

>> SELECTEER CONCAT(Naam,", Onderwerp) AS StudentDetail FROM data.leerling;

Voorbeeld 03: Meerdere kolommen samenvoegen met speciale tekens

Laten we aannemen dat de onderstaande tabel "leraar" tekenreekswaarden samenvoegt uit meer dan twee kolommen met een ander speciaal teken.

Probeer de onderstaande opdracht terwijl u het '-'-teken toevoegt in plaats van spatie. De resulterende set heeft de aaneengeschakelde kolom met tekenreeksen uit de tabelkolommen waarin speciale tekens worden gebruikt.

>> SELECTEER CONCAT (TeachName, '-', subject, '-', kwalificatie) AS Detail FROM data.leraar;

Voorbeeld 04: Samenvoegen tijdens het ophalen van extra kolommen

Als u de kolomreeksen wilt samenvoegen terwijl u andere kolommen in dezelfde query ophaalt, bent u hier aan het juiste adres. Beschouw de tabel "dieren" in de database "gegevens" hieronder.

We hebben de drie kolommen ervan aaneengeschakeld; "Kleur", "Naam" en "Geslacht" terwijl er tussenruimte en speciale tekens worden gebruikt. De aaneengeschakelde tekenreeks uit deze kolommen wordt opgeslagen in een nieuwe kolom, "AnimData". Aan de andere kant hebben we toegang gekregen tot de records van andere kolommen "Prijs" en "Leeftijd" uit deze tabel. De records worden opgehaald uit de rijen waar het geslacht van de dieren "M" is, betekent alleen voor mannen. U hebt de resultaten van aaneengeschakelde tekenreeksen uit verschillende kolommen, evenals andere kolommen die afzonderlijk zijn weergegeven.

>> SELECTEER CONCAT(Kleur,", Naam, '-', Geslacht) AS AnimData, Prijs, Leeftijd FROM data.dieren WAAR Geslacht = 'M';

Voorbeeld 05: Meer strings samenvoegen met kolomstrings

Als u tekenreeksen wilt toevoegen in plaats van speciale tekens of spaties, kunt u dat ook doen. Dus laten we een eenvoudig voorbeeld geven om dit te doen. Stel dat je een tabel "boek" hebt en je hebt de onderstaande gegevens met betrekking tot boeken, hun prijzen, auteurs, volumes en pagina's zoals weergegeven in de afbeelding. Nu zullen we de tekenreeksen uit de kolom "Naam", "Auteur" en "Prijs" samenvoegen met behulp van deze tabel.

We hebben de SELECT CONCAT-instructie gebruikt om strings uit de drie kolommen samen te voegen. Alle gegevens van deze tabel worden eerst gesorteerd in oplopende volgorde van kolom "Naam". Tussen haakjes hebben we "Het boek", "geschreven door" en "heeft prijs" als extra tekenreeksen in plaats van spatie of speciale tekens tussen aanhalingstekens. Nu neemt de CONCAT-functie de eerste omgekeerde kommawaarde "Het boek" samen met de waarde uit de kolom "Naam", dan de tweede omgekeerde kommawaarde 'geschreven door' gevolgd door de kolom "Auteur" tekenreekswaarde, en als laatste de derde omgekeerde kommawaarde "heeft prijs" gevolgd door de waarde van kolom 'Prijs'. Al deze strings en waarden uit de kolommen worden gecombineerd en het zal een volwaardige zin vormen make. Deze hele nieuwe megastringzin wordt opgeslagen in de nieuwe kolom "BookDetail".

>> SELECT CONCAT('Het boek', Naam, 'geschreven door', Auteur, 'heeft prijs', Prijs) AS BoekDetail FROM data.boek ORDER OP Naam ASC;

Voorbeeld 06: Kolomreeksen samenvoegen met CONCAT_WS

CONCAT_WS lijkt een unieke variant van de CONCAT-functie te zijn waarmee u kunt specificeren welk symbool (of tekens) als scheidingslijn met betrekking tot de aaneenschakeling van tekenreeksen zou worden weggelaten. Het is net zo eenvoudig als de eenvoudige CONCAT-functie. Laten we dus eens kijken naar de tabel "sociaal" in de MySQL-database met waarden over de gebruikers, hun meest gebruikte sociale-mediatoepassingen en de leeftijden van gebruikers. Nu zullen we de aaneenschakeling uitvoeren met behulp van de CONCAT_WS-functie.

In de onderstaande query hebben we drie kolommen aaneengeschakeld en dit aaneengeschakelde resultaat opgeslagen in de kolom "Detail". Zoals u kunt zien, is er iets anders, aangezien we enkele speciale tekens "***" hebben gedefinieerd in de aanhalingstekens vóór de kolomnamen. Dit komt omdat we deze speciale tekens tussen de reeksen van de kolommen willen toevoegen, de een na de ander met de functie CONTACT_WS. Dus uit dit scenario is het duidelijk dat we geen speciale tekens in de query hoeven te plaatsen na elke gespecificeerde kolom als het gaat om hetzelfde type teken.

>> SELECT CONCAT_WS('***', Gebruiker, Website, Leeftijd) AS Detail FROM data.sociaal;

Conclusie:

U bent nu effectief bekend met alle essentiële dingen over de aaneenschakeling van stringkolommen en hun waarden met behulp van de eenvoudige CONCAT-functie en de CONCAT_WS-functie in MySQL Shell.

Hoe Xdotool te gebruiken om muisklikken en toetsaanslagen in Linux te stimuleren
Xdotool is een gratis en open source opdrachtregelprogramma voor het simuleren van muisklikken en toetsaanslagen. Dit artikel behandelt een korte hand...
Top 5 ergonomische computermuisproducten voor Linux
Veroorzaakt langdurig computergebruik pijn in uw pols of vingers?? Heb je last van stijve gewrichten en moet je constant de hand schudden?? Voelt u ee...
Hoe de muis- en touchpad-instellingen te wijzigen met Xinput in Linux
De meeste Linux-distributies worden standaard geleverd met de bibliotheek "libinput" om invoergebeurtenissen op een systeem af te handelen. Het kan in...