Como eu retornaria TRUE ou FALSE se quatro dos últimos seis registros falhassem para um determinado MAKEID? Portanto, deve haver 4 falhas (ou registros FALSE) nos últimos seis
MAKEID FAILURES CREATEDATE
101 TRUE 12/1/2015
101 FALSE 12/5/2015
101 TRUE 12/6/2015
101 FALSE 12/8/2015
101 TRUE 12/10/2015
101 FALSE 12/15/2015
101 FALSE 1/1/2016
101 FALSE 1/2/2016
102 TRUE 12/2/2015
102 TRUE 12/4/2015
102 FALSE 12/5/2015
102 TRUE 12/6/2015
102 FALSE 12/7/2015
102 TRUE 1/1/2016
A consulta retornaria o seguinte:
MAKEID FOUROFLASTSIXFAILED
101 TRUE
102 FALSE
O requisito é que haja 4 ou mais falhas nos últimos seis registros. Portanto, se houver 4, 5 ou 6 falhas nos últimos seis registros, FOUROFLASTSIXFAILED retornará TRUE. Se houvesse apenas 1, 2, 3 registros para um determinado MAKEID, retornaria FALSE, pois é necessário que haja pelo menos 4 falhas nos seis registros anteriores.
Aqui está uma abordagem (mas, por favor, pare de mudar seus requisitos):
Resultados (acho que estão corretos, em oposição à saída desejada declarada em sua pergunta, que parece entrar em conflito com seus requisitos declarados):
Parece-me que
MAKEID = 102
é o único que falhou exatamente quatro vezes em suas últimas seis entradas, a menos que aFAILURES
coluna na tabela original realmente representeNOT_FAILURES
.