Beruflich Dokumente
Kultur Dokumente
2007
Observation Ligne
Merge Jointure
4 01/01/2000 40
4 01/02/2000 58
4 01/03/2000 76
5 01/01/2000 50
5 01/02/2000 71
Les attributs :
FORMAT=
INFORMAT=
LABEL=
LENGTH=
PROC SQL;
CREATE TABLE perf_bis AS
SELECT DISTINCT anim
FROM PERF ;
QUIT;
PROC SQL;
INSERT INTO PERF
VALUES(4, 01/02/2000, 100) ;
QUIT;
OU
PROC SQL;
INSERT INTO PERF
SET anim=4,
d_pesee= 01/02/2000,
poids=100 ;
QUIT;
PROC SQL;
INSERT INTO PERF
SELECT *
FROM PERF_200704;
QUIT;
PROC SQL;
DELETE FROM PERF
WHERE YEAR(d_pesee) = 2007 ;
QUIT;
Fonction Dfinition
PROC SQL;
SELECT
COUNT(*) AS nbpesees,
COUNT(DISTINCT anim) AS nbanim,
MIN(poids) AS mini, MAX(poids) AS maxi
FROM PERF;
QUIT;
nbpesees nbanim mini maxi
output:
12 5 20 110
PROC SQL;
SELECT anim,
COUNT(*) AS nbpesees,
MIN(poids) AS mini, MAX(poids) AS maxi
FROM PERF
GROUP BY anim ;
QUIT;
PROC SQL;
SELECT anim,
COUNT(*) AS nbpesees,
MIN(poids) AS mini, MAX(poids) AS maxi
FROM PERF
GROUP BY anim
HAVING nbpesees>2;
QUIT;
Introduction au langage SQL
A B
PERF ANIM
PEDIGREE
NUNATI
DATE_PESEE SEXE
POIDS NUPERE
NUMERE
On souhaite ajouter le numro de la mre dans la table perf pour les femelles
4 tapes: A B
1- le renommage de la cl DATA PED1 (DROP=NUNATI); SET PED;
ANIM=SUBSTR(NUNATI,3,1);
2- les tris PROC SORT DATA=PERF; BY ANIM;
PROC SORT DATA=PED1; BY ANIM;
3- la fusion
DATA SORTIE (DROP=SEXE NUPERE);
+ limination des variables
MERGE PERF (IN=A) PED1 (IN=B);
en trop
BY ANIM;
IF A AND B;
A B
PROC SQL;
CREATE TABLE SORTIE AS
SELECT T1.*, T2.numere
FROM PERF T1 INNER JOIN PED T2
ON T1.anim = SUBSTR(T2.nunati,3,1)
WHERE T2.sexe=F;
QUIT;
Introduction au langage SQL
4 01/01/2000 40 B
4 01/02/2000 58 B
4 01/03/2000 76 B
5 01/01/2000 50
5 01/02/2000 71
A B
PROC SQL;
CREATE TABLE SORTIE AS
SELECT T1.*, T2.numere
FROM PERF T1 LEFT JOIN PED T2
ON T1.anim = SUBSTR(T2.nunati,3,1)
WHERE T2.sexe=F;
QUIT;
Introduction au langage SQL
4 01/02/2000 58 B
4 01/03/2000 76 B
5 01/01/2000 50 .
5 01/02/2000 71 .
IF A LEFT JOIN
IF B RIGHT JOIN
LEFT JOIN
IF A AND NOT B
WHERE T2.NUNATI IS NULL
RIGHT JOIN
IF NOT A AND B
WHERE T1.ANIM IS NULL
IF A OR B OUTER JOIN
A B
Introduction au langage SQL