Transformarea unui text neuniform in text uniform scris

Intalnim deseori ca intr-o tabela sa gasim text, in special in campurile in care este permisa scrierea la liber, care este scris neuniform, in sensul ca ori incepe cu prima litera mica si continua cu restul mari (a fost apasat Caps-ul gresit), ori are litere mari pe la mijloc, tot din apasarea gresit a caps-ului, etc

 

Pentru a formata un astfel de text, am creat functia de mai jos:

 

[mai mult...]

Calculare varsta la data aleasa in functie de CNP

Avem nevoie uneori, in rapoarte, de varsta clientului la data curenta sau la o anumita data.

Si aici sunt doua situatii: avem nevoie de varsta in ani impliniti sau de varsta exacta, adica ani si zile.

Ca atare am facut o functie ca are trei parametri:

primul este cnp-ul

al doilea este data la care va fi calculata varsta

al treilea este un flag care specifica tipul calcului: pt 0 se calculeaza anii impliniti iar pt 1 se calculeaza varsta exacta in ani si zile.

[mai mult...]

Extragere data nastere din CNP

Ne lovim deseori de situatia de a avea un raport cu data de nastere a clientilor dar sa nu avem o coloana cu aceasta data, ci doar o coloana cu cnp. Ca atare suntem nevoiti sa extragem data de nastere din cnp.

Pt a usura rezolvarea problemei am scris o functie care face acest lucru.

[mai mult...]

Afisarea datei fara ore, minute si secunde

Se intampla deseori sa avem nevoie sa afisam data fara minute si secunde, sau mai important, sa facem join intre doua coloane de tip datetime, care au minute si secunde (adica sunt de forma 2017-12-06 11:49:48.377 ) si noi dorim ca joinul sa se faca pe data, fara a tine cont de minute si secunde.

Ca atare trebuie sa reusim sa scoatem minutele si secundele pt ca data sa fie afisata si interpretata asa 2017-12-06  sau asa 2017-12-06 00:00:00.000.

 

[mai mult...]

Eroare de Collation la join tabele din baze diferite

Erorile de collation apar cel mai frecvent cand trebuie sa facem join-uri intre tabele aflate pe baze diferite. (se poate intampla si pe aceeasi baza, daca exista tabele ce au coloane cu collation diferit, dar acest lucru se intampla mai rar)

Asta pentru ca , destul de des, bazele, chiar daca se afla pe acelasi server (si cu atat mai des in cazul in care se afla pe servere diferite) pot avea database collation diferit.

Database collation – reprezinta modul in care datele din baza respectiva sunt interpretate si sortate.

Mai jos avem doua baze de date, de pe acelasi server, care au collation diferit.

In prima baza am o tabela numita Angajati iar in a doua baza am o tabela numita Departamente.

Daca rulez in paralel selecturi din cele doua tabele, nu am nicio problema, datele sunt afisate simultan, precum se poate vedea mai jos:

[mai mult...]