SQL FIREBIRD CONSULTA CRUZADA
bOM DIA!
Utilizo Firebird 2.5 e Delphi
Tenho uma tabela de pedidos
Preciso fazer um consulta cruzada para geração de um grafico.
A Tabela e TB_PEDIDOS
ID|ITEM|DESC |QTDE|DTENTREGA |DTENVIO
01|0001|caixa |01 |01/01/2018 |04/02/2018
02|0001|caixa |01 |01/01/2019 |04/02/2019
03|0002|tela |02 |25/09/2019 |01/08/2019
04|0003|lapis |02 |25/04/2019 |26/04/2019
05|0004|grade |02 |25/09/2019 |02/08/2019
06|0001|caixa |01 |10/01/2018 |04/02/2019
07|0001|caixa |01 |10/08/2019 |15/08/2019
08|0001|caixa |01 |30/08/2019 |16/08/2019
Gostaria de fazer uma SQL Consulta para transformar a informação na configuração
abaixo:
ANO |Mes|total|Atrasado|NoPrazo
2018|01 |02 |02 |0
2019|01 |01 |01 |0
2019|04 |01 |01 |0
2019|08 |02 |01 |01
2019|09 |02 |00 |02
Alguem sabe se é possivel?
Utilizo Firebird 2.5 e Delphi
Tenho uma tabela de pedidos
Preciso fazer um consulta cruzada para geração de um grafico.
A Tabela e TB_PEDIDOS
ID|ITEM|DESC |QTDE|DTENTREGA |DTENVIO
01|0001|caixa |01 |01/01/2018 |04/02/2018
02|0001|caixa |01 |01/01/2019 |04/02/2019
03|0002|tela |02 |25/09/2019 |01/08/2019
04|0003|lapis |02 |25/04/2019 |26/04/2019
05|0004|grade |02 |25/09/2019 |02/08/2019
06|0001|caixa |01 |10/01/2018 |04/02/2019
07|0001|caixa |01 |10/08/2019 |15/08/2019
08|0001|caixa |01 |30/08/2019 |16/08/2019
Gostaria de fazer uma SQL Consulta para transformar a informação na configuração
abaixo:
ANO |Mes|total|Atrasado|NoPrazo
2018|01 |02 |02 |0
2019|01 |01 |01 |0
2019|04 |01 |01 |0
2019|08 |02 |01 |01
2019|09 |02 |00 |02
Alguem sabe se é possivel?
Daniel Antonio
Curtidas 0
Melhor post
Fernando Ito
20/08/2019
bOM DIA!
Utilizo Firebird 2.5 e Delphi
Tenho uma tabela de pedidos
Preciso fazer um consulta cruzada para geração de um grafico.
A Tabela e TB_PEDIDOS
ID|ITEM|DESC |QTDE|DTENTREGA |DTENVIO
01|0001|caixa |01 |01/01/2018 |04/02/2018
02|0001|caixa |01 |01/01/2019 |04/02/2019
03|0002|tela |02 |25/09/2019 |01/08/2019
04|0003|lapis |02 |25/04/2019 |26/04/2019
05|0004|grade |02 |25/09/2019 |02/08/2019
06|0001|caixa |01 |10/01/2018 |04/02/2019
07|0001|caixa |01 |10/08/2019 |15/08/2019
08|0001|caixa |01 |30/08/2019 |16/08/2019
Gostaria de fazer uma SQL Consulta para transformar a informação na configuração
abaixo:
ANO |Mes|total|Atrasado|NoPrazo
2018|01 |02 |02 |0
2019|01 |01 |01 |0
2019|04 |01 |01 |0
2019|08 |02 |01 |01
2019|09 |02 |00 |02
Alguem sabe se é possivel?
Utilizo Firebird 2.5 e Delphi
Tenho uma tabela de pedidos
Preciso fazer um consulta cruzada para geração de um grafico.
A Tabela e TB_PEDIDOS
ID|ITEM|DESC |QTDE|DTENTREGA |DTENVIO
01|0001|caixa |01 |01/01/2018 |04/02/2018
02|0001|caixa |01 |01/01/2019 |04/02/2019
03|0002|tela |02 |25/09/2019 |01/08/2019
04|0003|lapis |02 |25/04/2019 |26/04/2019
05|0004|grade |02 |25/09/2019 |02/08/2019
06|0001|caixa |01 |10/01/2018 |04/02/2019
07|0001|caixa |01 |10/08/2019 |15/08/2019
08|0001|caixa |01 |30/08/2019 |16/08/2019
Gostaria de fazer uma SQL Consulta para transformar a informação na configuração
abaixo:
ANO |Mes|total|Atrasado|NoPrazo
2018|01 |02 |02 |0
2019|01 |01 |01 |0
2019|04 |01 |01 |0
2019|08 |02 |01 |01
2019|09 |02 |00 |02
Alguem sabe se é possivel?
Agora deu certo:
select extract (year FROM dtentrega) ano
, extract (month from dtentrega) mes
, count(dtentrega) Total
, sum(case when extract (day FROM dtentrega) < extract(day from dtenvio) then 1 else 0 end) Atrasado
, sum(case when extract (day FROM dtentrega) >= extract(day from dtenvio) then 1 else 0 end) NoPrazo
from pedido
group by 1,2
Abraço,
ITO
GOSTEI 1
Mais Respostas
Fernando Ito
17/08/2019
olá Daniel Antonio,
Por enquanto eu consegui a metade do que você precisa rsrs
select extract (year FROM dtentrega) ano
, extract (month from dtentrega) mes
, count(dtentrega) Total
from pedido
group by 1,2
se eu conseguir o contador para os atrasados e os noprazo eu volto a postar
Um abraço,
ITO
Por enquanto eu consegui a metade do que você precisa rsrs
select extract (year FROM dtentrega) ano
, extract (month from dtentrega) mes
, count(dtentrega) Total
from pedido
group by 1,2
se eu conseguir o contador para os atrasados e os noprazo eu volto a postar
Um abraço,
ITO
GOSTEI 0
Daniel Antonio
17/08/2019
bOM DIA!
Utilizo Firebird 2.5 e Delphi
Tenho uma tabela de pedidos
Preciso fazer um consulta cruzada para geração de um grafico.
A Tabela e TB_PEDIDOS
ID|ITEM|DESC |QTDE|DTENTREGA |DTENVIO
01|0001|caixa |01 |01/01/2018 |04/02/2018
02|0001|caixa |01 |01/01/2019 |04/02/2019
03|0002|tela |02 |25/09/2019 |01/08/2019
04|0003|lapis |02 |25/04/2019 |26/04/2019
05|0004|grade |02 |25/09/2019 |02/08/2019
06|0001|caixa |01 |10/01/2018 |04/02/2019
07|0001|caixa |01 |10/08/2019 |15/08/2019
08|0001|caixa |01 |30/08/2019 |16/08/2019
Gostaria de fazer uma SQL Consulta para transformar a informação na configuração
abaixo:
ANO |Mes|total|Atrasado|NoPrazo
2018|01 |02 |02 |0
2019|01 |01 |01 |0
2019|04 |01 |01 |0
2019|08 |02 |01 |01
2019|09 |02 |00 |02
Alguem sabe se é possivel?
Utilizo Firebird 2.5 e Delphi
Tenho uma tabela de pedidos
Preciso fazer um consulta cruzada para geração de um grafico.
A Tabela e TB_PEDIDOS
ID|ITEM|DESC |QTDE|DTENTREGA |DTENVIO
01|0001|caixa |01 |01/01/2018 |04/02/2018
02|0001|caixa |01 |01/01/2019 |04/02/2019
03|0002|tela |02 |25/09/2019 |01/08/2019
04|0003|lapis |02 |25/04/2019 |26/04/2019
05|0004|grade |02 |25/09/2019 |02/08/2019
06|0001|caixa |01 |10/01/2018 |04/02/2019
07|0001|caixa |01 |10/08/2019 |15/08/2019
08|0001|caixa |01 |30/08/2019 |16/08/2019
Gostaria de fazer uma SQL Consulta para transformar a informação na configuração
abaixo:
ANO |Mes|total|Atrasado|NoPrazo
2018|01 |02 |02 |0
2019|01 |01 |01 |0
2019|04 |01 |01 |0
2019|08 |02 |01 |01
2019|09 |02 |00 |02
Alguem sabe se é possivel?
Agora deu certo:
select extract (year FROM dtentrega) ano
, extract (month from dtentrega) mes
, count(dtentrega) Total
, sum(case when extract (day FROM dtentrega) < extract(day from dtenvio) then 1 else 0 end) Atrasado
, sum(case when extract (day FROM dtentrega) >= extract(day from dtenvio) then 1 else 0 end) NoPrazo
from pedido
group by 1,2
Abraço,
ITO
GOSTEI 0