Ir para conteúdo

POWERED BY:

Arquivado

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

luan_alves

variavel vazia na procedure

Recommended Posts

boa tarde,

 

Estou montando uma procedure onde ela ira realiza uma consulta com variáveis informadas.

 

 

A minha dúvida é como alterar o valor da variavel quando ela não for informada, mas é se alguma variável não for informada. Porque a variavel idusuarios ela entra nas regras da aplicação para nunca ser nula ?

 

Estou enviando a procedure criada.

PROCEDURE `sp_view_jobsuserperiodo`(IN idusuarios INT,data_inicial DATE,data_final DATE)
BEGIN
	IF data_inicial IS NULL OR data_inicial='' THEN 
		SET data_inicial = DATE_SUB(CURDATE(), INTERVAL DAYOFWEEK(CURDATE()) - 1 DAY); -- DATA DO INICIO DA SEMANA COMEÇA COM DOMINGO--
    END IF;

    IF data_final IS NULL OR data_final='' THEN 
		SET data_final = DATE_ADD(CURDATE(), INTERVAL 6 - DAYOFWEEK(CURDATE()) DAY); -- DATA DO FINAL DA SEMANA TERMINA COM SÁBADO--
    END IF;


-- DECLARE data_inicial DATE DEFAULT DATE_SUB(CURDATE(), INTERVAL DAYOFWEEK(CURDATE()) - 1 DAY); -- DATA DO INICIO DA SEMANA COMEÇA COM DOMINGO--
-- DECLARE data_final DATE DEFAULT DATE_ADD(CURDATE(), INTERVAL 6 - DAYOFWEEK(CURDATE()) DAY); -- DATA DO FINAL DA SEMANA TERMINA COM SÁBADO--
SELECT j.* FROM jobs AS j
INNER JOIN usuarios  AS u ON u.idusuarios = j.idusuarios
WHERE j.responsavel = idusuarios AND j.data_inicio BETWEEN  data_inicial AND data_final
GROUP BY data_inicio;
END

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pois é, eu achei que era isso mesmo.

Fiz a pergunta aqui no fórum, para poder me assegurar da decisão.

Passe esta regra para a camada da aplicação.

 

Obrigado.

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.