Sunteți pe pagina 1din 85

Facultatea de Medicină

Informatică Medicală și Biostatistică


2021-2022 Semestrul 1
Curs 2

Prezentat de: Tudor Benea


tudor.benea@ulbsibiu.ro
Plan curs

• Informatica medicală

• Date medicale

• Surse de date medicale

• Observarea datelor

• Baze de date

2
Informatica medicală
• Domeniu de graniţă între Informatică şi
Medicină;
• Utilizează calculatorul în medicină şi îngrijirea
sănătăţii; Achiziţionează, procesează,
memorează, transmite şi utilizează informaţia
medicală;
• Se ocupă cu utilizarea sistemelor automate de
calcul în prelucrarea informaţiilor medicale.

[Bera L., 2020] 3


Probleme adresate
• Gestiunea datelor medicale;
• Asistarea investigaţiilor medicale;
• Prelucrarea semnalelor şi imaginilor medicale;
• Gestiunea laboratoarelor de analize medicale;
• Asistarea deciziei medicale (diagnostic,
tratament);
• Asistarea managementului medical;
• Asistarea cercetării medicale;
• Asistarea învăţământului şi educaţiei medicale.
[Bera L., 2020] 4
Ramuri ale Informaticii pentru
domeniul medical – exemple (1)
• Bioinformatica: prelucrează informatiile legate de
biomolecule, celule (genom, structura genetica a unor
virusuri, etc.), sau permite efectuarea de experimente
in silico;
• Chemoinformatica: folosirea de instrumente de calcul
pentru rezolvarea de probleme în domeniul chimiei;
• Imunoinformatica: folosirea de instrumente de calcul
pentru rezolvarea de probleme de imunologie;
• Farmacoinformatica: reunește cele 3 ramuri de mai sus
cu scopul descoperirii de noi medicamente;
• Neuroinformatica: prelucrează informațiile legate de
modul de funcționare al sistemului nervos.

5
Ramuri ale Informaticii pentru
domeniul medical – exemple (2)

• Fizioinformatica: prelucrează informațiile


legate de țesuturi, organe (procese de reglare)
• Informatica medicala: prelucrează informațiile
de tip individual (legate de pacient)
• Informatica pentru sanatate (Health
Informatics): prelucrează informatiile legate
de sănătatea publică.

[Bera L., 2020] 6


Plan curs

• Informatica medicală

• Date medicale

• Surse de date medicale

• Observarea datelor

• Baze de date

7
Tipuri de date
• Cantitative (sau numerice):
– Discrete: 1, 2, 3, 7, 134
– Continue: 3.1415, 57.296
• Calitative:
– Alternative (dacă se exclud):
• Binare: adevărat, fals SAU 0,1
• Multivalorice: “20-35 ani”, “36-50 ani”, “51-65 ani”
• Ordinale: “mic”, “mediu”, “mare”, “imens”
– Nealternative (dacă nu se exclud): “diabet;cardiopatie”
• Compuse:
– semnale biologice
– sunet
– imagine
– video
[Bera L., 2020] 8
Date medicale
• Calitative: • Semnale:
– Sex; – EEG;
– Diagnostic; – EKG.
– Prezența sau absența
unui simptom.
• Imagini medicale:
– Ecografie;
• Numerice: – Tomografie;
– TAS, TAD; – Radiografie.
– Glicemie.

[Bera L., 2020] 9


Proprietăți ale datelor (1)
• Denumire câmp / variabilă;
• Tip:
– String (șir de caractere) /
calitativ
– Numeric / cantitativ
• Dimensiune:
– Număr maxim de caractere
– Număr de cifre
– Valoare maximă / minimă
• Descriere
[IBM SPSS Statistics]
• Valori (definirea / explicarea valorilor posibile)
• Scale de măsurare
• Relații între date (SGBDR: Oracle Database, MS Access, ...)

10
Proprietăți ale datelor (2a)
• Denumire câmp / variabilă;
• Tip:
– String (șir de caractere) /
calitativ
– Numeric / cantitativ
• Dimensiune:
– Număr maxim de caractere
– Număr de cifre
– Valoare maximă / minimă
• Descriere
[IBM SPSS Statistics]
• Valori (definirea / explicarea valorilor posibile)
• Scale de măsurare
• Relații între date (SGBDR: Oracle Database, MS Access, ...)

11
Proprietăți ale datelor (2b)
• Denumire câmp / variabilă;
• Tip:
– String (șir de caractere) /
calitativ
– Numeric / cantitativ
• Dimensiune:
– Număr maxim de caractere
– Număr de cifre
– Valoare maximă / minimă
• Descriere
[IBM SPSS Statistics]
• Valori (definirea / explicarea valorilor posibile)
• Scale de măsurare
• Relații între date (SGBDR: Oracle Database, MS Access, ...)

12
Proprietăți ale datelor (3)
• Denumire câmp / variabilă;
• Tip:
– String (șir de caractere) /
calitativ
– Numeric / cantitativ
• Dimensiune:
– Număr maxim de caractere
– Număr de cifre
– Valoare maximă / minimă
• Descriere
[IBM SPSS Statistics]
• Valori (definirea / explicarea valorilor posibile)
• Scale de măsurare
• Relații între date (SGBDR: Oracle Database, MS Access, ...)

13
Scale de măsurare - SPSS
Date calitative (String):
• Nominală
• Ordinală

Date numerice:
• Scale
[IBM SPSS Statistics]

SPSS: Statistical Package for the Social Sciences


Statistical Product and Service Solutions
14
Scale de măsurare
Date calitative:
• Nominală: „paracetamol”, „aspirină”, „nurofen”
• Ordinală: „grad 1”, „grad 2”, „grad 3”

Date numerice:
• Interval: absența unui 0 absolut (ex. °C, °F); nu se
poate multiplica / diviza
• Raport: prezența unui 0 absolut – lipsa cantității
măsurate (ex. K – Kelvin, lungime, greutate, etc.);
se poate multiplica / diviza

[Daniel, W.W., et al., 2013] 15


Proprietăți ale datelor (4)
• Denumire câmp / variabilă;
• Tip:
– String (șir de caractere) /
calitativ
– Numeric / cantitativ
• Dimensiune:
– Număr maxim de caractere
– Număr de cifre
– Valoare maximă / minimă
• Descriere
• Valori (definirea / explicarea valorilor posibile)
• Scale de măsurare
• Relații între date (SGBDR: Oracle Database, MS Access, ...)

16
Relații – baze de date relaționale

[Wikipedia.com]
• - tabel (coloane: cheie, nume câmp,
tip câmp)
• - relație (cardinalitate: 1-1,1-N,N-1,M-N)
17
Relații – baze de date relaționale

• - tabel (coloane: cheie, nume câmp,


tip câmp)
• - relație (cardinalitate: 1-1,1-N,N-1,M-N)
18
Relații – baze de date relaționale

• - tabel (coloane: cheie, nume câmp,


tip câmp)
• - relație (cardinalitate: 1-1,1-N,N-1,M-N)
19
Relații – baze de date relaționale

• - tabel (coloane: cheie, nume câmp,


tip câmp)
• - relație (cardinalitate: 1-1,1-N,N-1,M-N)
20
Plan curs

• Informatica medicală

• Date medicale

• Surse de date medicale

• Observarea datelor

• Baze de date

21
Surse de date medicale

1. Date individuale despre pacient;

2. Cunoştinţe medicale;

3. Date despre reţeua de îngrijire a sănătăţii;

4. Date privind starea de sănătate a populaţiei.

[Bera L., 2020] 22


1. Date despre pacient
• de identificare • diagnostice
• socioprofesionale • semne, simptome
• antecedente heredocolaterale • parametri biologici
• momente ale evenimentelor • investigaţii
medicale: – ECG;
– declanşarea unei boli; – EEG;
– consultaţie; – Radiografii.
– proceduri medicale. • tratamente

[Bera L., 2020] 23


2. Cunoștințe medicale

• Maladii;
• Tratamente;
• Medicamente;
• Terminologia şi clasificarea medicală;
• Clasificarea intenaţională a maladiilor;
• Nomenclatorul sistematic al patologiilor.

[Bera L., 2020] 24


3. Date privind sănătatea publică
• Reţeaua sanitară:
– structura;
– unităţi şi servicii medicale.

• Resurse necesare:
– financiare;
– materiale (aparatură, medicamente, etc.);
– personal medical şi auxiliar.

[Bera L., 2020] 25


4. Date privind starea de sănătate a
populației
• Date de sinteză culese cu o frecvență dată:
– Statistici sanitare:
• Prevalența unei anumite boli.
– Date antropometrice (după vârstă, sex, etc.)
– Date epidemiologice:
• Mortalitatea;
• Natalitatea;
• Morbiditatea.
– Date privind mediul şi alimentaţia.

[Bera L., 2020] 26


Plan curs

• Informatica medicală

• Date medicale

• Surse de date medicale

• Observarea datelor

• Baze de date

27
Etapele cercetării statistice
• Observarea datelor - culegerea (înregistrarea) datelor
de masă;
• Verificarea omogenităţilor datelor;
• Prelucrarea statistică:
– sistematizarea datelor observării de masă;
– obţinerea sistemului de indicatori statistici;
• Analiza şi interpretarea statistică;
• Confruntarea şi compararea rezultatelor;
• Verificarea ipotezelor;
• Formularea concluziilor statistice asupra cercetării.

[Bera L., 2020] 28


Aspecte privind observarea datelor
• Obiectivele propuse;
• Tipul studiului;
• Modalitatea de alegere a subiecţilor;
• Timpul disponibil;
• Resursele financiare şi umane;
• Procedura folosită;
• Accesul la date.

[Bera L., 2020] 29


Culegere de date în SPSS

[Inspirat din Bera L., 2020] 30


Culegere de date în Excel

[Inspirat din Bera L., 2020] 31


Culegere de date în baza de date
(Microsoft Access)

[Inspirat din Bera L., 2020] 32


Variabile SPSS vs. Câmpuri MS Access

• Chiar dacă lucrăm cu aplicații diferite pentru gestiunea datelor, principiile


de definire, de colectare și de lucru cu datele se păstrează;
• Datele se pot transforma și exporta / importa dintr-un sistem în altul (ex.
datele prezentate anterior).
[Inspirat din Bera L., 2020] 33
Plan curs

• Informatica medicală

• Date medicale

• Surse de date medicale

• Observarea datelor

• Baze de date

34
Baze de date (BD)
• Bază de date (BD) - colecție organizată de date, stocate
și accesate electronic printr-un sistem automat de
calcul;
• Un sistem de gestiune a bazelor de date (SGBD, eng.
DBMS) este un sistem software care asigură
interacțiunea între: bazele de date, aplicațiile software
și utilizatori; [Wikipedia.com, 2021]

• Sistemele de gestiune a bazelor de date relaționale


(SGBDR, eng. RDBMS) – model pentru sisteme
software care stă la baza limbajului SQL și a tuturor
sistemelor moderne de baze de date, precum:
– MS SQL Server, IBM DB2, MySQL, MS Access, Oracle;

[W3Schools.com, 2021] 35
SGBDR / RDBMS
• Datele sunt stocate în obiecte numite tabele;
• Tabel – colecție de înregistrări, alcătuită din:
– Coloane (definesc câmpuri / variabile) – vertical;
– Rânduri (conțin înregistrări) – orizontal.
• Câmp – conține informații specifice fiecărei
înregistrări din tabel;
• Înregistrare – fiecare exemplu individual din
tabel;
• Tabelele sunt legate între ele prin relații.
[W3Schools.com, 2021] 36
SGBDR / RDBMS – exemplu

• - tabel (coloane: cheie, nume câmp,


tip câmp)
• - relație (cardinalitate: 1-1,1-N,N-1,M-N)
37
Tabel – exemplu (MS Access)

38
Limbajul SQL
• Este limbajul standard pentru SGBDR-urile
moderne (ex. MS SQL Server, IBM DB2, MySQL, MS Access, Oracle).
• SQL – abreviere de la Structured Query
Language (limbaj de interogare structurat);
• Permite stocarea, manipularea și accesul la
bazele de date relaționale;
• Dezvoltat în anii ’70;
• Devenit standard ANSI în 1986 și ISO în 1987.
[W3Schools.com, 2021] 39
Funcții ale limbajului SQL
Limbajul SQL îndeplinește o serie de funcții precum:
• execută interogări ale bazei de date (BD);
• extrage date din BD;
• inserează înregistrări noi în BD;
• actualizează / modifică înregistrări din BD;
• șterge înregistrări din baza de date;
• creează baze de date noi;
• creează tabele noi într-o BD;
• creează proceduri stocate, într-o BD;
• creează vizualizări (percepții logice ale datelor), într-o BD;
• stabilește permisiuni pentru tabele, proceduri, vizualizări.

[W3Schools.com, 2021] 40
Versiuni ale limbajului SQL
• SQL este un standard ANSI/ISO, însă există versiuni diferite
ale acestuia;
• Majoritatea SGBD-urilor vin cu propriile extensii, ca adaos-
uri la limbajul SQL;
• Pentru compatibilitate cu standard-ul ANSI, ele suportă,
însă, comenzile și / sau clauzele importante:
– SELECT
– UPDATE
– DELETE
– INSERT
– WHERE
• În cele ce urmează, vom folosi particularități ale limbajului
SQL pentru Microsoft Access.

[W3Schools.com, 2021] 41
Comenzi importante

• SELECT – extrage date din BD;


• UPDATE – actualizează datele;
• DELETE – șterge date din BD;
• INSERT INTO – inserează date noi în BD;
• CREATE DATABASE – creează o BD nouă;
• ALTER DATABASE – modifică o BD;
• CREATE TABLE – creează un tabel nou;
• ALTER TABLE – modifică un tabel;
• DROP TABLE – șterge un tabel;
• CREATE INDEX – creează un index (o cheie de căutare);
• DROP INDEX – șterge un index.

[W3Schools.com, 2021] 42
Reguli de sintaxă
• Comenzile:
– constau din cel puțin un cuvânt numit cuvânt cheie (ex. SELECT);
– pot conține clauze adiționale (ex. WHERE, ORDER BY);
– clauzele sunt opționale.
• Cuvintele cheie nu sunt case sensitive (sensibile la majuscule)
ex. select și SELECT reprezintă același lucru;
• Numele de tabele și de coloane pot fi case sensitive, în funcție de
configurări;
• Finalizarea unei instrucțiuni se face, de obicei (în funcție de SGBD), prin ;
la sfârșitul liniei. Aceasta permite executarea mai multor instrucțiuni într-
un apel către serverul de baze de date;
• Comentariile:
– la începutul liniei se utilizează -- :
ex. -- Acesta este un comentariu pe o singură linie
– pentru mai multe linii se utilizează /* și */ (ca în limbajele C / C++):
ex. /* Acesta este un comentariu
pe două linii. */
[Inspirat din Bera L., 2020] 43
Instrucțiunea SELECT
• Folosită pentru extragerea de date din BD;
• Datele extrase sunt stocate într-un tabel cu
rezultate;
• Sintaxă (cu coloanele specificate):
SELECT coloana1, coloana2, ...
FROM nume_tabel;
• Sintaxă (extragerea tuturor coloanelor):
SELECT * FROM nume_tabel;
[W3Schools.com, 2021] 44
Instrucțiunea SELECT DISTINCT
• SELECT, pentru valori distincte (fără duplicate);

• Sintaxă:
SELECT DISTINCT coloana1, coloana2, ...
FROM nume_tabel;

[W3Schools.com, 2021] 45
Clauza WHERE
• Folosită pentru a filtra înregistrările;
• Este folosită în instrucțiunile SELECT, dar și în
alte instrucțiuni precum UPDATE, DELETE, etc.;
• Sintaxă:
SELECT coloana1, coloana2, ...
FROM nume_tabel
WHERE condiție;

[W3Schools.com, 2021] 46
Expresii
• Expresiile sunt formate din:
– Operanzi &
– Operatori.
• Exemplu: a+b
• Tipul expresiei este dat de rezultatul expresiei;
• Pot fi de tip:
– Numeric - exp_N
– Caracter - exp_C
– Dată calendaristică - exp_D
– Logic

[Bera L., 2020] 47


Clasificare operatori
• După numărul operanzilor asupra cărora se
aplică:
– Unari ( un singur operand ) : + - ~ (bitwise NOT)
– Binari ( doi operanzi ): + - /*%
• După rezultatul expresiei şi tipul operanzilor
asupra cărora se aplică:
– Aritmetici;
– Relaţionali;
– Logici.

[Bera L., 2020] 48


Operatorii aritmetici (1)
+ - * / %
• Se aplică operanzilor de tip numeric;
• Rezultatul expresiei este o valoare
numerică;
• Când un operand este dată calendaristică și
celălalt operand este numeric, rezultatul este
o dată calendaristică:
ex. se adună sau se scade un număr de zile.
[Bera L., 2020] 49
Operatorii aritmetici (2)

[Bera L., 2020] 50


Operatori relaționali (1)
< <= > >= = <>, != (în unele versiuni)

• Rezultatul expresiei este o valoare booleană


(TRUE - adevărat; FALSE - fals).
• Se aplică operanzilor/expresiilor de orice tip
însă operanzii care se compară trebuie să
fie de același tip.

[Bera L., 2020] 51


Operatori relaționali (2)

[Bera L., 2020] 52


Operatori logici (1)
AND OR NOT IN
ALL ANY BETWEEN EXISTS
LIKE SOME

• Rezultatul expresiei este o valoare booleană


(TRUE - adevărat; FALSE - fals).
• Se aplică atât operanzilor de tip logic, cât și
de alte tipuri (ex. IN).
[Bera L., 2020] 53
Operatori logici (2)

[Bera L., 2020] 54


Operanzii
• Nume de câmpuri;

• Constante;

• Funcţii;

• Variabile.

[Bera L., 2020] 55


Constantele
• Nu îşi modifică valoarea;
• Constantă numerică: 0 10.7
• Constanta de tip caracter se declară între:
"" sau ' '
• Constantele de tip logic pot lua una din
valorile :
TRUE true FALSE false

[Bera L., 2020] 56


Clauza WHERE – operatori (1)
• = > < >= <= <>
• BETWEEN – verificare dacă o valoare este într-un
interval;
• LIKE – verificare a unui pattern (șablon);
• IN – specificarea mai multor valori pentru un
câmp. [W3Schools.com, 2021]
• Exemplul 1:
SELECT nume, mediu_prov, varsta
FROM analize_pacient
WHERE varsta >= 50;

57
Clauza WHERE – operatori (1)
• = > < >= <= <>
• BETWEEN – verificare dacă o valoare este într-un
interval;
• LIKE – verificare a unui pattern (șablon);
• IN – specificarea mai multor valori pentru un
câmp. [W3Schools.com, 2021]
• Exemplul 2:
SELECT nume, mediu_prov, varsta
FROM analize_pacient
WHERE varsta BETWEEN 50 AND 60;
Obs: limitele intervalului sunt incluse.
58
Clauza WHERE – operatori (1)
• = > < >= <= <>
• BETWEEN – verificare dacă o valoare este într-un
interval;
• LIKE – verificare a unui pattern (șablon);
• IN – specificarea mai multor valori pentru un
câmp. [W3Schools.com, 2021]
• Exemplul 3:
SELECT nume, mediu_prov, caract_analize
FROM analize_pacient
WHERE caract_analize LIKE 'CN*';
Wildcard-ul * înlocuiește 0 sau mai multe caractere.
59
Clauza WHERE – operatori (1)
• = > < >= <= <>
• BETWEEN – verificare dacă o valoare este într-un
interval;
• LIKE – verificare a unui pattern (șablon);
• IN – specificarea mai multor valori pentru un
câmp. [W3Schools.com, 2021]
• Exemplul 4:
SELECT nume, mediu_prov, caract_analize
FROM analize_pacient
WHERE caract_analize LIKE '?C?N*';
Wildcard-ul ? înlocuiește un singur caracter.
60
Clauza WHERE – operatori (1)
• = > < >= <= <>
• BETWEEN – verificare dacă o valoare este într-un
interval;
• LIKE – verificare a unui pattern (șablon);
• IN – specificarea mai multor valori pentru un
câmp. [W3Schools.com, 2021]
• Exemplul 5:
SELECT ID_pacient, nume, mediu_prov, varsta
FROM analize_pacient
WHERE nume IN ('B.M.','M.R.','U.C.');

61
Clauza WHERE – operatori (2)
• AND
...
WHERE condiție1 AND condiție2 AND condiție3 ...;
• OR
...
WHERE condiție1 OR condiție2 OR condiție3 ...;
• NOT
...
WHERE NOT condiție;
[W3Schools.com, 2021] 62
Clauza ORDER BY
• Folosită pentru a ordona înregistrările;
• Sintaxă:
SELECT coloana1, coloana2, coloana3...
FROM nume_tabel
ORDER BY coloana1, coloana3... ASC | DESC;
• Exemplu: [W3Schools.com, 2021]

SELECT nume, mediu_prov, varsta


FROM analize_pacient
ORDER BY varsta DESC;
Obs: În mod implicit se consideră ASC.
63
Alias SQL
• Nume temporar dat unui câmp sau unui tabel;
• Rol de a atribui nume mai ușor de înțeles;
• Sintaxă (alias coloană):
SELECT nume_coloană AS nume_alias
FROM nume_tabel;
• Sintaxă (alias tabel):
SELECT nume_coloană(e)
FROM nume_tabel AS nume_alias;
[W3Schools.com, 2021] 64
Valori NULL
• NULL – lipsa valorii (pentru câmpuri opționale)
• NULL este diferit de 0 sau de ''
• Nu se poate testa cu operatori precum =, <, <>
• Se verifică cu IS NULL sau IS NOT NULL
• Sintaxă:
SELECT coloana1, coloana2, ...
FROM nume_tabel
WHERE nume_coloană IS NULL | IS NOT
NULL;
[W3Schools.com, 2021] 65
Clauza SELECT TOP
• Folosită pentru a specifica numărul sau
procentul înregistrărilor întoarse;

• Sintaxă:
SELECT TOP număr|PERCENT coloane
FROM nume_tabel
WHERE condiție;

[W3Schools.com, 2021] 66
Operatorul UNION
• Combină rezultatele a două interogări SELECT;
• Se cere:
– același număr de coloane;
– aceeași ordine pentru coloane;
– același tip pentru coloane.
• Elimină duplicatele, păstrând doar valori distincte;
• UNION ALL întoarce și duplicatele.
• Sintaxă:
SELECT coloane FROM tabel1
UNION | UNION ALL
SELECT coloane FROM tabel2;

[W3Schools.com, 2021] 67
Proceduri / funcții
• Elemente reutilizabile ale unui limbaj, prin
intermediul cărora se realizează o acțiune;
• Alcătuite din blocuri de cod / instrucțiuni.

• Funcţiile returnează o valoare și


• pot fi:
– Predefinite (ex. funcții ale limbajului SQL);
– Definite de utilizator.
• Deoarece returnează o valoare, funcțiile pot fi
utilizate ca operanzi într-o expresie.

[Inspirat din Bera L., 2020] 68


Funcții
• Funcţiile sunt caracterizate prin:
– Numele funcției;
– O listă de parametri (împreună cu tipul lor);
– Tipul – dat de valoarea pe care o returnează;

• Sintaxa pentru apelul funcţiilor:


nume_funcţie([listă_parametrii])

[Bera L., 2020] 69


Funcții agregat SQL
• Funcțiile agregat fac calcule pe seturi de
valori;
• Întorc, ca rezultat, o singură valoare.

• Exemple:
MIN, MAX, COUNT, SUM,
AVG, STDEV, VAR

70
Funcția MIN
• Funcție agregat care returnează valoarea cea
mai mică a unei coloane;

• Sintaxă:
SELECT MIN(nume_coloană)
FROM nume_tabel
WHERE condiție;

[W3Schools.com, 2021] 71
Funcția MAX
• Funcție agregat care returnează valoarea cea
mai mare a unei coloane;

• Sintaxă:
SELECT MAX(nume_coloană)
FROM nume_tabel
WHERE condiție;

[W3Schools.com, 2021] 72
Funcția COUNT
• Funcție agregat care returnează numărul
valorilor care îndeplinesc o condiție;

• Sintaxă:
SELECT COUNT(nume_coloană)
FROM nume_tabel
WHERE condiție;
Obs: Se poate folosi și cu argumentul *
[W3Schools.com, 2021] 73
Funcția SUM
• Funcție agregat care returnează suma
valorilor unei coloane;

• Sintaxă:
SELECT SUM(nume_coloană)
FROM nume_tabel
WHERE condiție;

[W3Schools.com, 2021] 74
Funcția AVG
• Funcție agregat care returnează valoarea
medie a unei coloane;

• Sintaxă:
SELECT AVG(nume_coloană)
FROM nume_tabel
WHERE condiție;

[W3Schools.com, 2021] 75
Funcția STDEV
• Funcție agregat care returnează deviația
standard (σ) pentru valorile unei coloane;

• Sintaxă:
SELECT STDEV(nume_coloană)
FROM nume_tabel
WHERE condiție;

[W3Schools.com, 2021] 76
Ditribuția normală

[Wikipedia.com]
• µ – media
• σ – deviația standard
• Regulă 68 – 95 – 99.7 (%)
77
Funcția VAR
• Funcție agregat care returnează varianța
pentru valorile unei coloane;
• Valoare: σ2

• Sintaxă:
SELECT VAR(nume_coloană)
FROM nume_tabel
WHERE condiție;
[W3Schools.com, 2021] 78
Exemple de funcții SQL cu rezultat
numeric
• ABS(exp_N) • ROUND(exp_N)
• INT(exp_N) • SGN(exp_N)
• EXP(exp_N) • DAY(exp_D)
• LOG(exp_N) • WEEKDAY(exp_D)
• SQR(exp_N) • MONTH(exp_D)
• VAL(exp_C) • YEAR(exp_D)
• LEN(exp_C) • SECOND(exp_D)
• ASC(exp_C)
[Inspirat din Bera L., 2020] 79
Exemple de funcții SPSS cu rezultat
numeric
• Funcţiile numerice pot fi folosite în orice expresii
numerice în instrucțiunile:
IF; SELECT IF; DO IF; ELSE IF; LOOP IF;
END LOOP IF și comanda COMPUTE.
• Exemple:
– ABS(var_N)
– INT(var_N)
– EXP(var_N)
– LOG(var_N)
– SQRT(var_N)

[Bera L., 2020] 80


Exemple de funcții SQL cu rezultat
logic

• IsDate(exp)

• IsNull(exp)

• IsNumeric(exp)

[Inspirat din Bera L., 2020] 81


Exemple de funcții SQL cu rezultat dată
calendaristică

• DateValue(exp_C): transformă o expresie


caracter într-o dată calendaristică;

• NOW(): returnează data curentă a sistemului,


ca dată calendaristică.

[Inspirat din Bera L., 2020] 82


Exemple de funcții SQL cu rezultat
caracter
• WeekdayName(exp_N)
• MonthName(exp_N)
• Format(exp)
• CHR(exp_N)
• STR(exp_N)
• Replace (exp_C)
• LCase(exp_C) / UCase(exp_C)

[Inspirat din Bera L., 2020] 83


Limbajul SQL – studiu suplimentar
• Tutorial SQL introductiv, cu editor online (pentru
testarea de cod), pe site-ul W3Schools:
https://www.w3schools.com/sql/

• În engleză, dar cu opțiune de tradus cu Google


Translate în alte limbi (inclusiv româna):

84
Mulțumesc!

O săptămână minunată!

85

S-ar putea să vă placă și