This repository has been archived by the owner on Aug 10, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
get_data_functions.sql
162 lines (144 loc) · 4.33 KB
/
get_data_functions.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
--Pega dados do Nutricionista
--Autor: Tiago Bachiega de Almeida
--sexo
CREATE OR REPLACE FUNCTION get_nutricionista_sexo(_cpf VARCHAR) RETURNS VARCHAR(11) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT sexo FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--rg
CREATE OR REPLACE FUNCTION get_nutricionista_rg(_cpf VARCHAR) RETURNS VARCHAR(10) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT rg FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--nome_prenome
CREATE OR REPLACE FUNCTION get_nutricionista_prenome(_cpf VARCHAR) RETURNS VARCHAR(30) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT nome_prenome FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--nome_sobrenome
CREATE OR REPLACE FUNCTION get_nutricionista_sobrenome(_cpf VARCHAR) RETURNS VARCHAR(70) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT nome_sobrenome FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--data_de_nascimento
CREATE OR REPLACE FUNCTION get_nutricionista_data(_cpf VARCHAR) RETURNS DATE AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT data_de_nascimento FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--email
CREATE OR REPLACE FUNCTION get_nutricionista_email(_cpf VARCHAR) RETURNS VARCHAR(100) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT email FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--Pega dados do Morador
--Autor: Tiago Bachiega de Almeida
--trabalho
CREATE OR REPLACE FUNCTION get_morador_trabalho(_cpf VARCHAR) RETURNS VARCHAR(100) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Morador m WHERE m.cpf_pessoa = _cpf) THEN
RETURN (SELECT trabalho FROM Morador m WHERE m.cpf_pessoa = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--universidade
CREATE OR REPLACE FUNCTION get_morador_universidade(_cpf VARCHAR) RETURNS VARCHAR(100) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Morador m WHERE m.cpf_pessoa = _cpf) THEN
RETURN (SELECT universidade FROM Morador m WHERE m.cpf_pessoa = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--sexo
CREATE OR REPLACE FUNCTION get_morador_sexo(_cpf VARCHAR) RETURNS VARCHAR(11) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT sexo FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--rg
CREATE OR REPLACE FUNCTION get_morador_rg(_cpf VARCHAR) RETURNS VARCHAR(10) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT rg FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--nome_prenome
CREATE OR REPLACE FUNCTION get_morador_prenome(_cpf VARCHAR) RETURNS VARCHAR(30) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT nome_prenome FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--nome_sobrenome
CREATE OR REPLACE FUNCTION get_morador_sobrenome(_cpf VARCHAR) RETURNS VARCHAR(70) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT nome_sobrenome FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--data_de_nascimento
CREATE OR REPLACE FUNCTION get_morador_data(_cpf VARCHAR) RETURNS DATE AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT data_de_nascimento FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;
--email
CREATE OR REPLACE FUNCTION get_morador_email(_cpf VARCHAR) RETURNS VARCHAR(100) AS $$
BEGIN
IF EXISTS (SELECT 1 FROM Pessoa p WHERE p.cpf = _cpf) THEN
RETURN (SELECT email FROM Pessoa p WHERE p.cpf = _cpf);
ELSE
RETURN (0);
END IF;
END;
$$ LANGUAGE plpgsql;