2
How do I make the data referenced to select 'result' return only those containing the value '1'
SELECT
DATE(m.data_marcacao) AS data,
nome_operacao operacao,
f.cracha_funcionario,
MAX(IF(id_tipo_marcacao_est = 4,
@i:=TIME(data_marcacao),
NULL)) ref_inicio,
MAX(IF(id_tipo_marcacao_est = 5,
@f:=TIME(data_marcacao),
NULL)) ref_fim,
TIMEDIFF(MAX(IF(id_tipo_marcacao_est = 5,
data_marcacao,
NULL)),
MAX(IF(id_tipo_marcacao_est = 4,
data_marcacao,
NULL))) intervalo,
CASE
WHEN
TIMEDIFF(MAX(IF(id_tipo_marcacao_est = 5,
data_marcacao,
NULL)),
MAX(IF(id_tipo_marcacao_est = 4,
data_marcacao,
NULL))) < '00:59:00'
THEN
1
ELSE 0
END result,
segundo_refeicao_jornada_horas ref_tempo
FROM
bd_sipe.tb_marcacao m
INNER JOIN
bd_sipe.tb_funcionario f ON m.id_funcionario = f.id_funcionario
INNER JOIN
bd_sipe.tb_operacao o ON o.id_operacao = f.id_operacao_est
INNER JOIN
bd_sipe.tb_jornada_horas jh ON jh.id_jornada_horas = m.jornada_horas
WHERE
DATE(data_marcacao) BETWEEN '2015-01-15' AND '2015-04-16'
AND id_tipo_marcacao_est IN (4 , 5)
AND segundo_refeicao_jornada_horas = 3600
GROUP BY f.cracha_funcionario
ORDER BY o.nome_operacao
;
it worked!! vlw
– raddx