MySQL MariaDB

MySQL Yhdistä merkkijonosarakkeet CONCAT-toimintoon

MySQL Yhdistä merkkijonosarakkeet CONCAT-toimintoon
Merkkijonojen ketjutus MySQL: ssä auttaa lisäämään jonon toisen loppuun. Merkkijono- tai tietopankkikenttien liittäminen yksinäisiksi kentiksi tulosjoukossa on mahdollista MySQL: n merkkijononhallintamenetelmillä. Tässä oppaassa, kun käytät MySQL CONCAT- tai CONCAT WS -menetelmiä, löydät erilaisia ​​tapoja liittää kaksi tai useampia merkkijonoja samanaikaisesti.

Avaa sovelluksista MySQL-komentorivisovelluksen kuori ja lisää salasanasi pyydettäessä.

Esimerkki 01: Liitä kaksi pylvästä CONCAT: lla

Meillä on taulukko 'opettaja' tietokannassa 'data'. Haluamme liittää sen merkkijonot kahdesta sarakkeesta "TeachName" ja "sukunimi" ilman välilyöntiä.

Suorita SELECT CONCAT -komento, jonka sulkeissa on sarakkeiden nimet pilkuilla erotettuna. Uusi sarake 'Nimi' luodaan liitettyjen merkkijonojen arvojen tallentamiseksi siihen ja tulos näkyy alla.

>> SELECT CONCAT (TeachName, sukunimi) AS Name FROM tiedoista.opettaja;

Esimerkki 02: Yhdistä kaksi saraketta välilyönnillä

Oletetaan, että meillä on alla oleva taulukko "opiskelija" tietokannassa "data" ja haluamme yhdistää sen merkkijonot kahdesta sarakkeesta "Nimi" ja "Aihe" arvojen väliin.

Käytä seuraavaa SELECT CONCAT -komentoa ja anna sulkeissa sarakkeiden nimet yhdistääksesi merkkijonon arvot välilyönnillä. Liitetyt arvot tallennetaan uuteen sarakkeeseen ”StudentDetail.”Tuloksena olevassa sarakkeessa on nyt kaikki ketjutetut merkkijonot.

>> SELECT CONCAT (nimi, ", aihe) AS StudentDetail FROM -tiedoista.opiskelija;

Esimerkki 03: Yhdistä useita sarakkeita erikoismerkeillä

Oletetaan, että alla oleva taulukko "opettaja" yhdistää merkkijonojen arvot useammasta kuin kahdesta sarakkeesta, joilla on erilainen merkki.

Kokeile alla olevaa komentoa lisäämällä '-' -merkki välilyönnin sijaan. Tuloksena olevassa joukossa on ketjutettu taulukon sarakkeiden merkkijonojen sarake, jossa käytetään erikoismerkkejä.

>> SELECT CONCAT (TeachName, '-', aihe, '-', pätevyys) AS Detail FROM data.opettaja;

Esimerkki 04: Yhdistä, kun haetaan muita sarakkeita

Jos haluat ketjuttaa sarakemerkkijonoja samalla kun haet muita sarakkeita samasta kyselystä, olet oikeassa paikassa. Harkitse taulukkoa "eläimet" alla olevasta tietokannan "tiedoista".

Olemme liittäneet sen kolme saraketta; "Väri", "Nimi" ja "Sukupuoli" samalla kun käytät välilyöntiä ja erikoismerkkejä. Näiden sarakkeiden ketjutettu merkkijono tallennetaan uuteen sarakkeeseen "AnimData". Toisaalta olemme päässeet tämän taulukon muiden sarakkeiden ”Hinta” ja “Ikä” tietueisiin. Tietueet haetaan riveiltä, ​​joissa eläinten sukupuoli on ”M” tarkoittaa vain uroksia. Sinulla on yhdistettyjen merkkijonojen tulokset eri sarakkeista sekä muista sarakkeista, jotka on näytetty erikseen.

>> SELECT CONCAT (Väri, ", Nimi, '-', Sukupuoli) AS AnimData, Price, Age FROM data.eläimet Missä sukupuoli = 'M';

Esimerkki 05: Yhdistä lisää merkkijonoja sarakejonoilla

Jos haluat lisätä merkkijonoja erikoismerkkien tai välilyöntien sijaan, voit tehdä sen myös. Joten, meillä on yksinkertainen esimerkki tämän tekemisestä. Oletetaan, että sinulla on taulukon "kirja" ja sinulla on alla olevat tiedot kirjoista, niiden hinnoista, tekijöistä, määristä ja sivuista kuvan osoittamalla tavalla. Yhdistämme nyt sarakkeiden "Nimi", "Kirjoittaja" ja "Hinta" merkkijonot tämän taulukon avulla.

Olemme käyttäneet SELECT CONCAT -käskyä ketjuttamaan merkkijonoja kolmesta sarakkeesta. Kaikki tämän taulukon tiedot lajitellaan ensin Nimi-sarakkeen nousevassa järjestyksessä. Suluissa olemme tarjonneet "Kirja", "kirjoittanut" ja "on hinta" -merkkijonot tilan tai erikoismerkkien sijaan käännetyissä pilkuissa. CONCAT-toiminto ottaa ensimmäisen käänteisen pilkun arvon "Kirja" yhdessä sarakkeessa "Nimi" olevan arvon, sitten toisen käänteisen pilkun arvon "kirjoittama", jota seuraa sarake "Kirjoittaja" -merkkijonon arvo, ja viimeisenä kolmannen käännetty pilkkuarvo "on hinta" ja sen jälkeen sarakkeen "Hinta" arvo. Kaikki nämä sarakkeiden merkkijonot ja arvot yhdistetään ja se muodostaa täydellisen lauseen. Tämä uusi mega-merkkijonolause tallennetaan uuteen sarakkeeseen "BookDetail".

>> SELECT CONCAT ('Kirja', Nimi, 'Kirjoittaja', Kirjoittaja, 'on hinta', Hinta) AS BookDetail FROM data.kirja Tilauksen nimi ASC;

Esimerkki 06: Yhdistä sarakejonot käyttämällä CONCAT_WS: ää

CONCAT_WS näyttää olevan ainutlaatuinen muunnelma CONCAT-ominaisuudesta, jonka avulla voit määrittää, mikä symboli (tai merkit) erotettaisiin merkkijonon ketjutuksen jakajana. Se on yhtä yksinkertainen kuin yksinkertainen CONCAT-toiminto. Katsotaan siis MySQL-tietokannan taulukkoa "sosiaalinen", jolla on arvoja käyttäjistä, heidän eniten käytetyistä sosiaalisen median sovelluksistaan ​​ja käyttäjien ikäisistä. Nyt suoritetaan ketjutus käyttämällä CONCAT_WS-toimintoa.

Alla olevassa kyselyssä olemme liittäneet kolme saraketta ja tallentaneet tämän yhdistetyn tuloksen sarakkeeseen "Detail". Kuten huomaat, on jotain erilaista, koska olemme määritelleet joitain erikoismerkkejä “***” käänteisissä pilkuissa ennen sarakkeiden nimiä. Tämä johtuu siitä, että haluamme lisätä nämä erikoismerkit sarakkeiden merkkijonojen väliin, jotka tulevat peräkkäin CONTACT_WS-funktion avulla. Joten tästä skenaariosta on selvää, että meidän ei tarvitse lisätä erikoismerkkejä kyselyyn jokaisen määritetyn sarakkeen jälkeen, kun kyse on samantyyppisestä merkistä.

>> VALITSE CONCAT_WS ('***', Käyttäjä, Verkkosivusto, Ikä) AS Yksityiskohtaiset tiedot.sosiaalinen;

Päätelmä:

Olet nyt tehokkaasti eritellyt kaikki olennaiset merkkijonosarakkeiden ja niiden arvojen ketjutusominaisuudet käyttämällä yksinkertaista CONCAT-funktiota ja CONCAT_WS-funktiota MySQL Shellissä.

Kuinka käyttää GameConqueror-huijausmoottoria Linuxissa
Artikkelissa on opas GameConqueror-huijausmoottorin käytöstä Linuxissa. Monet Windows-pelejä pelaavat käyttäjät käyttävät "Cheat Engine" -sovellusta m...
Parhaat pelikonsoliemulaattorit Linuxille
Tässä artikkelissa luetellaan suositut pelikonsolin emulointiohjelmistot, jotka ovat saatavana Linuxille. Emulointi on ohjelmistojen yhteensopivuusker...
Best Linux Distros for Gaming in 2021
The Linux operating system has come a long way from its original, simple, server-based look. This OS has immensely improved in recent years and has no...