Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Felipe Rossi

Erro funcao cont_sexo

Recommended Posts

Boa Tarde estou fazendo um trabalho de faculdade e emperrei em criar uma determinada funcao.

a funcao tem que retornar a quantidade de clientes do sexo feminino e a quantidade do sexo masculino da Tabela Cliente.

 

idcliente | nome | sexo | cpf | rg | dtnascimento | idcidade

-----------+---------+------+-------+-------+--------------+----------

1 | Carlos | M | 1234 | 134 | 1990-10-08 | 2

10 | Luciano | M | 8899 | 9883 | 1989-08-10 | 5

2 | Marcia | F | 3482 | 234 | 1988-09-20 | 4

3 | Robson | M | 34223 | 8239 | 1992-06-02 | 3

4 | Caren | F | 2834 | 82342 | 1991-12-13 | 7

5 | Adriano | M | 28342 | 28342 | 1981-07-17 | 8

6 | Mario | M | 28342 | 32842 | 1991-01-19 | 10

7 | Eder | M | 299 | 9290 | 1990-11-10 | 9

8 | Marcos | M | 2899 | 8293 | 1992-02-28 | 6

9 | Joao | M | 9898 | 34892 | 1985-05-04 | 1

 

ja tentei de tudo jeito e nao consigo que retorne o sexo do cliente;

aqui esta a funcao que estou tentando criar:

eu sei que em determinada linha eu tenho que usar o COUNT e o LIKE

mas ja tentei de tudo e nao consegui exibir o resultado

fico muito grato pela ajuda.

 

CREATE FUNCTION cont_sexo() returns record as

$$

declare

reg record;

begin

for reg in select * from cliente loop

if (tsexo = 'M') then

return "Masculino";

else

return "Feminino";

end if;

end;

$$

language plpgsql;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não seria o seguinte?

 

select count(*), case(sexo)

when 'M' then 'Masculino'

when 'F' then 'Feminino'

else ''

 

end

from cliente

group by sexo

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.