Consulta E Condição Em Sql

08/06/2015

0

Boa noite pessoal.

Queria uma ajuda com um código para o seguinte critério:

Eu possuo a tabela "funcionarios" e a tabela "salas".
Preciso fazer uma consulta dos nomes dos funcionarios (func_nome) e descrição das salas (sala_desc) dos funcionários que possuem entre 20 e 30 anos, e caso não haja nenhum registro, apresente uma mensagem indicando que nada foi encontrado. (não consegui fazer um código para comparar se foi ou não encontrado algo e exibir a mensagem)

Obrigado desde já.
Bruno Costa

Bruno Costa

Responder

Post mais votado

08/06/2015

Se você deseja fazer isso diretamente no banco, crie uma stored procedure e adapte o código utilizando a mesma ideia !

No Sql Server seria, algo como...

CREATE PROCEDURE pesquisaDADOS
AS
  DECLARE @Registros INT

  SET @Registros = (SELECT COUNT(fun_idade) FROM funcionarios WHERE fun_idade BETWEEN 18 AND 20)
 
  IF @Registros > 0
  BEGIN
     select 'Nenhum Registro Encontrado !'
  END
  ELSE
  BEGIN
     select func_nome, sala_desc, fun_idade FROM funcionarios WHERE fun_idade BETWEEN 18 AND 20
  END
GO

Marcos P

Marcos P
Responder

Mais Posts

08/06/2015

Andre Santos..

apresentar uma mensagem??

acho q isso naum é possivel
Responder

08/06/2015

Marcos P

Bruno,

Você tem a query ?

Ela funciona, quando executada diretamente no banco de dados ?

Em caso positivo, basta tratar, do lado da aplicação, a quantidade de registros retornados pela consulta. Zero ( ou null ) indicam que não existem registros !

Em caso negativo, favor informar.
Responder

08/06/2015

Bruno Costa

Eu fiz isso para salvar a mensagem:

SET @mensagem = (SELECT 'Nenhum Registro Encontrado');

Acho que isso serviria para exibir caso nenhum registro fosse encontrado:

SELECT @mensagem;

Porém não sei quais condições posso usar, para realizar as instruções caso algum registro seja encontrado ou para exibir a mensagem caso nenhum registro seja encontrado.
Responder

08/06/2015

Bruno Costa

Marcos P,

Estou fazendo diretamente no banco de dados, o que eu preciso é de condições, mas não sei quais usar.

Por Exemplo:

SET @mensagem = (SELECT 'Nenhum Registro Encontrado');
SET @contador = 0;
SET @contador = (SELECT COUNT(fun_idade) FROM funcionarios WHERE fun_idade BETWEEN 18 AND 20);

"SE" @contador !=0 (Realizar As Instruções De Select Que Eu Citei No Post)
"SE NÃO" (Exibir A Mensagem Armazenada Na Variável @mensagem)

Precisava de algo que fizesse tipo isso.
Responder

08/06/2015

Marcos P

Essa implementação é parcial e deveria ser inclusa em uma stored procedure, para retorno à aplicação.

De qualquer modo, isso não é necessário...

Execute a query simples DO LADO DA APLICAÇÃO e trate a quantidade de registros retornados !

Algo como...

query = ( select func_nome, sala_desc from... )
execute query
se (query.record_count = 0)
  então... Mensagem(Não existem registros ! )
  senão... Mensagem(Existem registros ! )
fimse


Fiz um pseudo-código qualquer, porque você não especificou a linguagem que está utilizando no desenvolvimento.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar