SQLShack (Română)

Acest articol explorează șir de manipulare folosind SQL Coaguleze funcții în SQL Server.

manipularea String este un proces pentru a genera o altă formă de date existente într-un mod de afaceri utilizează sau afișate ca rezultate în rapoarte. Articole anterioare SQL funcția string, am scris, inclusiv funcții SQL string pentru Munging de date și SQL subșir funcția prezentare generală discutat de pregătire a datelor și de gestionare a datelor sarcini folosind built-in SQL Server funcții string., SQL server are, de asemenea, unele funcții de caractere încorporate care ne permit, de asemenea, să manipulăm și să transformăm datele. În același timp, este important să examinați setul de date, să explorați valorile datelor și să codificați sau să decodați valorile, după caz, pentru a genera date semnificative. Este important să știți cum să navigați prin valori lipsă în noastre de seturi de date, înțelegerea impactului pe calcule, interogări, rapoarte și date-set de pregătirea și de a veni cu tehnici pentru a evita permițându valori Null strice resultsets.

ce este o valoare nulă?,

Înainte de a ne îngropa în modul de a naviga potențialul teren minat de seturi de date cu valori lipsă și pentru a evita pas cu pas pe un Nul, să ia mai întâi o privire rapidă la ceea ce un este NUL. null (sau NULL) este un marker special folosit în limbajul de interogare structurat pentru a indica faptul că o valoare de date nu există în baza de date. Introdus de creatorul modelului bazei de date relaționale, E. F., Codd, SQL Null servește pentru a îndeplini cerința ca toate sistemele de gestionare a bazelor de date relaționale adevărate (RDBMS) să susțină o reprezentare a „informațiilor lipsă și a informațiilor inaplicabile”. Codd a introdus, de asemenea, utilizarea simbolului omega (ω) grecesc cu litere mici pentru a reprezenta Null în teoria bazei de date. În SQL, NULL este un cuvânt rezervat folosit pentru a identifica acest marker. … Acest lucru nu trebuie confundat cu o valoare de 0. O valoare nulă indică lipsa unei valori — lipsa unei valori nu este același lucru cu o valoare de zero, în același mod în care lipsa unui răspuns nu este același lucru cu un răspuns de „nu”.,SQL null este o stare, nu o valoare. Această utilizare este destul de diferită de majoritatea limbajelor de programare, unde valoarea nulă a unei referințe înseamnă că nu indică niciun obiect.SQL oferă unele funcționalități la îndemână pentru a lucra cu datele de caractere în interogările SQL pe care le vom descrie în detaliu

funcția SQL Coalesce

funcțiile SQL Coalesce și IsNull sunt utilizate pentru a gestiona valorile nule. În timpul procesului de evaluare a expresiei, valorile nule sunt înlocuite cu valoarea definită de utilizator.,

funcția SQL Coalesce evaluează argumentele în ordine și întotdeauna returnează prima valoare non-nulă din lista argumentelor definite.

Sintaxa

COAGULEZE ( expresie )

Proprietăți de SQL Coaguleze funcția

  1. Expresii trebuie să fie de aceleași date de tip
  2. poate conține mai multe expresii
  3. SQL Coaguleze funcția sintactică de comenzi rapide pentru Cazul de exprimare
  4. evaluează Întotdeauna pentru un număr întreg în primul rând, un număr întreg urmat de expresie caracter randamentele întreg ca o ieșire.,

Exemple:

SQL Coaguleze într-un șir de concatenare funcționare

În exemplul următor, vom înlănțui unele valori. Dar, din nou, este doar o recenzie pentru a vă anunța ce se întâmplă atunci când avem o valoare nulă. Deci, să mergem mai departe și să executăm T-SQL. Și putem vedea că întâlnim o valoare nulă în timpul procesării operației de concatenare a șirurilor. SQL server returnează pur și simplu NULL ori de câte ori se confruntă cu valoarea nulă. Rezultatul nu este o combinație de firstname, null, și ultimul nume.,

1
SELECT firstName +’ ‘+MiddleName+’ ‘+ LastName FullName FROM Person.Person

Let us handle the NULL values using a function called SQL COALESCE. It allows handling the behavior of the NULL value., Deci, în acest caz, utilizați funcția coalesce SQL pentru a înlocui orice nume de mijloc valori NULL cu o valoare ” (Char(13)-spațiu). Instrucțiunea SQL ar trebui să concateneze toate cele trei nume, dar nu vor apărea valori nule în ieșire. Acum vedem că numele complet este afișat cu un spațiu în mijloc, pentru valori nule. În acest fel, este posibilă personalizarea eficientă a valorilor coloanelor.,

1
SELECTAȚI prenume +’ ‘+COAGULEZE(MiddleName,”) +’ ‘+ Nume DE Persoană.Persoană

SQL Coaguleze și funcția de pivotare

următorul exemplu returnează concatenate non-valori null din tabelul de „stat”. În unele cazuri, poate fi necesar să atribuiți valorile statice concatenate unei variabile., În acest caz, valorile coloanei orașului sunt analizate folosind funcția SQL Coalesce și concatenate într-un singur citat pentru a pregăti un șir de valori. Ieșirea este apoi manipulată în continuare pentru a elimina ultimul caracter pentru a prelua un șir valid de valoare de intrare.,

Output:

1
SELECT ‘(‘+substring(@col,1,len(@col)-1)+’)’

Scalar user-defined function and SQL Coalesce function

A user-defined function is created to return a string specific to the provided input and then the output is grouped using a grouping clause., În exemplul următor, funcția scalar valued returnează valorile string concatenate separate prin”, „pentru o intrare specificată „oraș”. Următorul exemplu returnează o ieșire în care coloana de stat este grupată și valorile sale orașe sunt concatenate și separate printr-un delimitator ‘,’ (virgulă). De asemenea, puteți utilizator STRING_AGG dacă utilizați SQL Server 2017. Puteți consulta mai multe informații cu articolul Top SQL string funcții în SQL Server 2017

Iată cum numim funcția nume dbo.tfn_CoalesceConcat în instrucțiunea select.,

The output is a concatenated stream of values separated by a delimiter ‘,’

1
2
3
4

SELECT state, city = dbo.tfn_CoalesceConcat(state)
FROM dbo.,stat
GRUPUL DE stat
COMANDA DE stat;

validare de Date folosind SQL Coaguleze funcția

În următorul exemplu, am de gând să găsească de urgență angajat de contact. De obicei, în orice organizație, numerele de telefon ale angajatului sunt listate sub coloane de lucru, Acasă, telefon mobil.să vedem cum să găsim angajați unde nu sunt listate contacte de urgență sau, cu alte cuvinte, să tragem toate detaliile angajatului cu contacte de urgență.,

în exemplul următor, tb_EmergencyContact conține numerele de contact ale tuturor angajaților.funcția SQL Coalesce este utilizată pentru a selecta coloanele homephone, workphone și cellphone. În cazul valorilor nule, valoarea ” NA ” (nu se aplică), un șir literal este returnat.

SQL Coaguleze și Calculat coloane

următorul exemplu utilizează SQL FUZIONA pentru a compara valorile hourlywage, salariu, și comisia coloane și să se întoarcă numai non-valoare nulă a fost găsit în coloane.,

următoarele T-SQL este folosit pentru a lista totală a plătit salariul tuturor angajaților

Acum, haideți Să vedem un exemplu pentru a crea o coloană calculată cu SQL Coaguleze funcții în SQL Server

În general, am putea avea nevoie pentru a folosi expresia în tabele. În tabele, este necesar să se calculeze valorile care sunt adesea calculate folosind mai multe coloane existente și cu puține valori scalare ale tabelului. De asemenea, aceste coloane sunt dependente de una sau mai multe alte coloane., În acest fel, putem crea o coloană calculată folosind funcția Coalesce SQL, astfel încât valorile nule să fie gestionate eficient.

acum, Puteți vedea că o simplă instrucțiune SELECT afișează rezultatele pre-calculate.

SQL COALESCE și CASE expression

funcția SQL COALESCE poate fi reprezentată sintactic folosind expresia CASE. De exemplu, după cum știm, funcția Coalesce returnează primele valori non-nule.,

SELECTAȚI COAGULEZE (expression1, expression2, expression3) DE la nume tabelă;

Cele de mai sus se Coaguleze declarație SQL poate fi rescris folosind instrucțiunea case.,id=”6df95ef3dd”>

1
2
3
4
5
6
7
8
9
10
11
12
SELECTAȚI
prenume+”+prenume fullname,
relația,
CASE
CÂND homephone NU este NULL Atunci homephone
atunci CÂND telefonul NU este NULL, Atunci telefonul mobil
CÂND lucra NU este NULL Atunci workphone
ALTCEVA ” NA ”
INDIA
EmergencyContactNumber
DE
dbx.,tb_EmergencyContact

interogarea returnează același rezultat ca cel care foloseste COAGULEZE funcție.

Wrap Up

În acest articol, am discutat un sfat și trucuri pentru a demonstra utilizarea SQL Coaguleze funcția de a interoga în mod eficient cu T-SQL. Am discutat, de asemenea, diverse cazuri de utilizare a funcției SQL Coalesce. De asemenea, este posibil să optimizați ieșirea prin crearea unei coloane calculate. sper că v-a plăcut acest articol pe funcția Coalesce din SQL Server., Simțiți-vă liber pune orice întrebări în comentariile de mai jos.

  • Autor
  • Mesajele Recente
Am o baza de Date tehnolog având 11+ ani de bogat, experienta hands-on pe baza de Date tehnologii. Sunt Microsoft Certified Professional și susținută cu o diplomă în Master of Computer Application.
specialitatea mea constă în proiectarea & implementarea soluțiilor de disponibilitate ridicată și migrarea multiplă platformă DB., Tehnologiile care lucrează în prezent sunt SQL Server, PowerShell, Oracle și MongoDB.,
Vezi toate posturile de Prashanth Jayaram

Ultimele posturi de Prashanth Jayaram (vezi toate)
  • O privire de ansamblu rapidă a bazei de date de audit în SQL – ianuarie 28, 2021
  • Cum să înființeze Azure de Sincronizare a Datelor între baze de date SQL Azure și local SQL Server – 20 ianuarie 2021
  • Cum de a efectua Azure SQL baze de date de Import/Export, operațiuni folosind PowerShell – 14 ianuarie 2021

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *