- Yksi tai jopa useampi argumentti voi esiintyä.
- Yhdistää argumentit ja palauttaa tuloksena olevan merkkijonon.
- Kun kaikki arvot ovat ei-binäärisiä merkkijonoja, anna ei-binäärinen merkkijono.
- Antaa binäärimerkkijonon, jos argumenteissa käytetään binaarijonoja.
- Jos se on numeerinen, se käännetään myös ei-binaariseen merkkijonomaiseen muotoon.
- Jos jokainen argumentti on NULL, tämä funktio palauttaa NULL.
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ä.