- Var rasties viens vai pat vairāki argumenti.
- Saīsina argumentus un atgriež iegūto virkni.
- Kad visas vērtības nav bināras virknes, iegūstiet ne bināru virkni.
- Iegūst bināro virkni, ja argumentos tiek izmantotas kādas binārās virknes.
- Ja tas ir skaitlisks, tas tiek tulkots arī tā, kas nav binārā virknei līdzīgā formā.
- Ja katrs arguments ir NULL, šī funkcija atgriež NULL.
No lietojumprogrammām atveriet MySQL komandrindas klienta čaulu un pēc pieprasījuma pievienojiet paroli.
01. piemērs: savienojiet divas kolonnas, izmantojot CONCAT
Mums ir tabula “skolotājs” datu bāzē “dati”. Mēs vēlamies saistīt tās virknes no divām kolonnām “TeachName” un “lastname” bez atstarpes starp tām.
Izpildiet komandu SELECT CONCAT, iekavās kolonnu nosaukumus atdalot ar komatu. Jaunā kolonna “Nosaukums” tiek ģenerēta, lai tajā glabātu sasaistītās virknes vērtības, un rezultāts tiek parādīts zemāk.
>> SELECT CONCAT (TeachName, uzvārds) kā nosaukums no datiem.skolotājs;
02. piemērs: savienojiet divas kolonnas ar atstarpi
Pieņemsim, ka mums ir zemāk esošā tabula “students” datu bāzē “dati”, un mēs vēlamies apvienot tās virknes no divām kolonnām “Nosaukums” un “Priekšmets” ar atstarpi starp vērtībām.
Izmantojiet zemāk esošo komandu SELECT CONCAT, iekavās norādot kolonnu nosaukumus, lai apvienotu virkņu vērtības, kas atdalītas ar atstarpi. Saīsinātās vērtības tiks saglabātas jaunā slejā “StudentDetail.”Rezultātajā kolonnā tagad ir visas sasietās virknes.
>> SELECT CONCAT (Name, ", Subject) AS StudentDetail FROM data.students;
03. piemērs: Apvienojiet vairākas kolonnas ar īpašām rakstzīmēm
Pieņemsim, ka zemāk esošā tabula “skolotājs” apvieno virkņu vērtības no vairāk nekā divām kolonnām ar atšķirīgu īpašo rakstzīmi.
Izmēģiniet zemāk esošo komandu, vienlaikus atstarpes vietā pievienojot zīmi “-”. Rezultātajā komplektā ir sasieta virkņu kolonna no tabulas kolonnām ar tajā izmantotām īpašām rakstzīmēm.
>> SELECT CONCAT (TeachName, '-', subject, '-', kvalifikācija) AS Detalizēti no datiem.skolotājs;
04. Piemērs: savienojums, izgūstot papildu kolonnas
Ja vēlaties apvienot kolonnu virknes, vienlaikus iegūstot citas kolonnas tajā pašā vaicājumā, jūs esat īstajā vietā. Apsveriet tabulu “dzīvnieki” zemāk esošajā datu bāzē “dati”.
Mēs esam salīmējuši tās trīs kolonnas; “Krāsa”, “Vārds” un “Dzimums”, vienlaikus izmantojot atstarpi un īpašās rakstzīmes. Saīsinātā virkne no šīm kolonnām tiks saglabāta jaunā kolonnā “AnimData”. No otras puses, no šīs tabulas mēs esam piekļuvuši citu sleju “Cena” un “Vecums” ierakstiem. Ieraksti tiks iegūti no tām rindām, kur dzīvnieku dzimums ir “M” nozīmē tikai tēviņus. Jums ir dažādu kolonnu sasietu virkņu, kā arī citu kolonnu rezultāti, kas ir parādīti atsevišķi.
>> SELECT CONCAT (Color, ", Name, '-', Gender) AS AnimData, Price, Age FROM data.dzīvnieki KUR Dzimums = 'M';
05. piemērs: savienojiet vēl virknes ar kolonnu virknēm
Ja vēlaties īpašo rakstzīmju vai atstarpju vietā pievienot virknes, to varat izdarīt arī jūs. Tātad, pieņemsim vienkāršu piemēru, kā to izdarīt. Pieņemsim, ka jums ir tabula “grāmata”, un jums ir šādi dati par grāmatām, to cenām, autoriem, apjomiem un lapām, kā parādīts attēlā. Tagad mēs savienosim virknes no kolonnām “Vārds”, “Autors” un “Cena”, izmantojot šo tabulu.
Mēs esam izmantojuši paziņojumu SELECT CONCAT, lai savienotu virknes no trim kolonnām. Visi šīs tabulas dati vispirms tiek kārtoti kolonnas “Nosaukums” augošā secībā. Iekavās apgrieztajos komatos kā papildu virknes esam norādījuši “Grāmata”, “Autors:” un “Ir cena”. Tagad funkcija CONCAT paņems pirmo apgriezto komatu vērtību “Grāmata” kopā ar vērtību no kolonnas “Nosaukums”, pēc tam otro apgriezto komatu vērtību “rakstīja”, kam sekos kolonnas “Autors” virknes vērtība, un visbeidzot trešo apgrieztā komata vērtība “ir cena”, kam seko kolonnas “Cena” vērtība. Visas šīs virknes un vērtības no kolonnām tiks apvienotas, un tas veidos pilnīgu teikumu. Šis viss jaunais mega virknes teikums tiks saglabāts jaunajā slejā “BookDetail”.
>> SELECT CONCAT ('grāmata', nosaukums, 'raksta', autors, 'ir cena', cena) AS BookDetail FROM dati.grāmata PASŪTĪT PĒC nosaukuma ASC;
06. piemērs: savienojiet kolonnu virknes, izmantojot CONCAT_WS
CONCAT_WS, šķiet, ir unikāls CONCAT funkcijas variants, kas ļauj norādīt, kurš simbols (vai rakstzīmes) tiks atdalīts kā dalītājs attiecībā uz virkņu savienošanu. Tā ir tikpat vienkārša kā vienkāršā CONCAT funkcija. Tātad, ņemsim vērā MySQL datu bāzes tabulu “sociālā”, kurā ir vērtības par lietotājiem, viņu visbiežāk izmantotajām sociālo mediju lietojumprogrammām un lietotāju vecumu. Tagad mēs veiksim savienošanu, izmantojot funkciju CONCAT_WS.
Tālāk esošajā vaicājumā mēs esam salīmējuši trīs kolonnas un saglabājuši šo sasaistīto rezultātu kolonnā “Detail”. Kā jūs varat novērot, ir kaut kas cits, jo apgrieztajos komatos pirms kolonnu nosaukumiem esam definējuši dažas īpašās rakstzīmes “***”. Tas ir tāpēc, ka mēs vēlamies pievienot šīs īpašās rakstzīmes starp kolonnu virknēm, kas nāk viena pēc otras, izmantojot funkciju CONTACT_WS. No šī scenārija ir skaidrs, ka mums nav jāievieto speciālās rakstzīmes vaicājumā pēc katras norādītās kolonnas, kad runa ir par tāda paša veida rakstzīmēm.
>> Atlasiet CONCAT_WS ('***', lietotājs, vietne, vecums) kā detalizētu informāciju no datiem.sabiedrisks;
Secinājums:
Tagad jūs esat efektīvi izskaustis visas būtiskās lietas par virkņu kolonnu un to vērtību savienošanu, izmantojot MySQL Shell vienkāršo funkciju CONCAT un CONCAT_WS funkciju.