Como selecionar a data mais recente do campo "dataalteracao"

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
  

Mensagemem Ter, 10 Set 2019 4:19 pm

SELECT idunidade, dataalteracao, nmempregado, superintendencia, divisaodistrito, dscargo
FROM ( SELECT uc.idunidade,h.dataalteracao, e.nmempregado, u.superintendencia, u.divisaodistrito, C.dscargo
FROM sicoe_unidade un, sicoe_unidadeconsumidora uc, sicoe_identundconsumidora ID,
sicoe_quadrocarga q, sicoe_quadrocargahist h, corp_empregado e, sicoe_vw_hierarquiaundorg u, corp_cargo C
WHERE h.usralteracao = e.numatriculaempregado AND e.idunidadeorganiz = u.idunidadeorganiz
AND h.idquadrocarga = q.idquadrocarga AND q.idunidade = un.idunidade
AND un.idunidade = uc.idunidade AND uc.idunidadeconsumidora = ID.idunidadeconsumidora
AND uc.idunidade IN (848, 849, 850, 852, 1580, 2101, 2355, 3970, 4704, 4936, 5132, 5176, 5183, 5191, 5207, 5351, 8041, 9944, 902, 903, 904, 2058, 2059, 2308, 2309, 2670, 4243, 4560, 4578, 4579, 5302, 8326, 7768, 10361, 10321, 10301, 913, 915, 4798, 5222, 5223, 3112, 3171, 869, 3170, 3699, 3972, 4340, 4555, 4619, 5283, 9181, 870, 871, 872, 476, 477, 478, 2422, 2578, 2753, 3672, 3680, 4660, 4775, 5174, 5175, 5224, 3187, 873, 2996, 3037, 3816, 4133, 4569, 874, 1700, 3678, 5861, 910, 911, 912, 914, 1553, 4791, 878, 879, 880, 2839, 3973, 4576, 5802, 5987, 7325, 7056, 9565, 884, 885, 1508, 1785, 1786, 3811, 4248, 6365, 5369, 7763, 8523, 1687, 2103, 8703, 2472, 1505, 2756, 2841, 2873, 499, 500, 501, 502, 503, 504, 1501, 1577, 1856, 2296, 3957, 3958, 4831, 5112, 5121, 5139, 10127, 889, 1910, 4038, 8028, 890, 891, 892, 895, 896, 897, 4634) AND h.tipoalteracao = 'ALTERACAO' AND e.cdcargo = C.cdcargo
ORDER BY idunidade,
dataalteracao DESC);
jaderdeandrade

Mensagemem Ter, 10 Set 2019 6:01 pm

Esse codigo faz a seleção mas não exibe o campo/coluna dataalteracao

Código: Selecionar todos
SELECT idunidade, nmempregado, superintendencia, divisaodistrito, dscargo
FROM (SELECT uc.idunidade, MAX(h.dataalteracao), e.nmempregado, u.superintendencia, u.divisaodistrito, C.dscargo
FROM sicoe_unidade un, sicoe_unidadeconsumidora uc, sicoe_identundconsumidora ID,
sicoe_quadrocarga q, sicoe_quadrocargahist h, corp_empregado e, sicoe_vw_hierarquiaundorg u, corp_cargo C
WHERE h.usralteracao = e.numatriculaempregado AND e.idunidadeorganiz = u.idunidadeorganiz
AND h.idquadrocarga = q.idquadrocarga AND q.idunidade = un.idunidade
AND un.idunidade = uc.idunidade AND uc.idunidadeconsumidora = ID.idunidadeconsumidora
AND uc.idunidade IN (848, 849, 850, 852, 1580, 2101, 2355, 3970, 4704, 4936, 5132, 5176, 5183, 5191, 5207, 5351, 8041, 9944, 902, 903, 904, 2058, 2059, 2308, 2309, 2670, 4243, 4560, 4578, 4579, 5302, 8326, 7768, 10361, 10321, 10301, 913, 915, 4798, 5222, 5223, 3112, 3171, 869, 3170, 3699, 3972, 4340, 4555, 4619, 5283, 9181, 870, 871, 872, 476, 477, 478, 2422, 2578, 2753, 3672, 3680, 4660, 4775, 5174, 5175, 5224, 3187, 873, 2996, 3037, 3816, 4133, 4569, 874, 1700, 3678, 5861, 910, 911, 912, 914, 1553, 4791, 878, 879, 880, 2839, 3973, 4576, 5802, 5987, 7325, 7056, 9565, 884, 885, 1508, 1785, 1786, 3811, 4248, 6365, 5369, 7763, 8523, 1687, 2103, 8703, 2472, 1505, 2756, 2841, 2873, 499, 500, 501, 502, 503, 504, 1501, 1577, 1856, 2296, 3957, 3958, 4831, 5112, 5121, 5139, 10127, 889, 1910, 4038, 8028, 890, 891, 892, 895, 896, 897, 4634) AND h.tipoalteracao = 'ALTERACAO' AND e.cdcargo = C.cdcargo
GROUP BY uc.idunidade, e.nmempregado, u.superintendencia, u.divisaodistrito,
C.dscargo);
jaderdeandrade

Mensagemem Ter, 10 Set 2019 8:48 pm

Faltou você colocar a maior data de alteração na sua cláusula SELECT.

Veja:
Código: Selecionar todos
SELECT idunidade, nmempregado, superintendencia, divisaodistrito, dscargo, maior_dt_alt
  FROM (SELECT uc.idunidade,
               MAX(h.dataalteracao) maior_dt_alt,
               e.nmempregado,
               u.superintendencia,
               u.divisaodistrito,
               C.dscargo
          FROM sicoe_unidade             un,
               sicoe_unidadeconsumidora  uc,
               sicoe_identundconsumidora ID,
               sicoe_quadrocarga         q,
               sicoe_quadrocargahist     h,
               corp_empregado            e,
               sicoe_vw_hierarquiaundorg u,
               corp_cargo                C
         WHERE h.usralteracao = e.numatriculaempregado
           AND e.idunidadeorganiz = u.idunidadeorganiz
           AND h.idquadrocarga = q.idquadrocarga
           AND q.idunidade = un.idunidade
           AND un.idunidade = uc.idunidade
           AND uc.idunidadeconsumidora = ID.idunidadeconsumidora
           AND uc.idunidade IN (848,
                                849,
                                850,
                                852,
                                1580,
                                2101,
                                2355,
                                3970,
                                4704,
                                4936,
                                5132,
                                5176,
                                5183,
                                5191,
                                5207,
                                5351,
                                8041,
                                9944,
                                902,
                                903,
                                904,
                                2058,
                                2059,
                                2308,
                                2309,
                                2670,
                                4243,
                                4560,
                                4578,
                                4579,
                                5302,
                                8326,
                                7768,
                                10361,
                                10321,
                                10301,
                                913,
                                915,
                                4798,
                                5222,
                                5223,
                                3112,
                                3171,
                                869,
                                3170,
                                3699,
                                3972,
                                4340,
                                4555,
                                4619,
                                5283,
                                9181,
                                870,
                                871,
                                872,
                                476,
                                477,
                                478,
                                2422,
                                2578,
                                2753,
                                3672,
                                3680,
                                4660,
                                4775,
                                5174,
                                5175,
                                5224,
                                3187,
                                873,
                                2996,
                                3037,
                                3816,
                                4133,
                                4569,
                                874,
                                1700,
                                3678,
                                5861,
                                910,
                                911,
                                912,
                                914,
                                1553,
                                4791,
                                878,
                                879,
                                880,
                                2839,
                                3973,
                                4576,
                                5802,
                                5987,
                                7325,
                                7056,
                                9565,
                                884,
                                885,
                                1508,
                                1785,
                                1786,
                                3811,
                                4248,
                                6365,
                                5369,
                                7763,
                                8523,
                                1687,
                                2103,
                                8703,
                                2472,
                                1505,
                                2756,
                                2841,
                                2873,
                                499,
                                500,
                                501,
                                502,
                                503,
                                504,
                                1501,
                                1577,
                                1856,
                                2296,
                                3957,
                                3958,
                                4831,
                                5112,
                                5121,
                                5139,
                                10127,
                                889,
                                1910,
                                4038,
                                8028,
                                890,
                                891,
                                892,
                                895,
                                896,
                                897,
                                4634)
           AND h.tipoalteracao = 'ALTERACAO'
           AND e.cdcargo = C.cdcargo
         GROUP BY uc.idunidade,
                  e.nmempregado,
                  u.superintendencia,
                  u.divisaodistrito,
                  C.dscargo);
dr_gori
Localização: Portland, OR USA

Thomas F. G

Você já respondeu a dúvida de alguém hoje?
http://glufke.net/oracle/search.php?search_id=unanswered



Voltar para SQL

Quem está online

Usuários navegando neste fórum: Majestic-12 [Bot] e 5 visitantes