Jair - Fórmula Postado 14 de Julho de 2009 Tópicos Que Criei: 884 Tópicos/Dia: 0.13 Meu Conteúdo: 8.799 Conteúdo/Dia: 1.34 Reputação: 289 Pontos/Conquistas: 106.246 Conteúdo Resolvido: 0 Dias Ganho: 185 Status: Offline Idade: 51 Dispositivo: Linux Denunciar Compartilhar Postado 14 de Julho de 2009 Dicas de SQL: Como, em uma sentença SQL, pegar uma data e transforma-la sempre no primeiro dia do mesmo mes e ano ? -- Usando GetDate Select Getdate() as Get_Date, DateAdd(day, -(datepart(day, getdate())-1), getdate()) as DT_Tradad -- ou -- usando uma variável de data Declare @DataX DateTime Set @DataX = '2009-07-20' Select @DataX as Data_X, DateAdd(day, -(datepart(day, @DataX)-1), @DataX) as DT_Tradada Mais dicas, aos poucos vamos postando aqui... Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Monica Pardal Postado 14 de Julho de 2009 Tópicos Que Criei: 1 Tópicos/Dia: 0.00 Meu Conteúdo: 19 Conteúdo/Dia: 0.00 Reputação: 1 Pontos/Conquistas: 96 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Denunciar Compartilhar Postado 14 de Julho de 2009 Legal essa dica. Vou ver algumas aqui pra colocar pra vocês também. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
lugao Postado 14 de Julho de 2009 Tópicos Que Criei: 61 Tópicos/Dia: 0.01 Meu Conteúdo: 659 Conteúdo/Dia: 0.11 Reputação: 1 Pontos/Conquistas: 3.883 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Idade: 41 Denunciar Compartilhar Postado 14 de Julho de 2009 apenas complementando sobre datas, friso o comando datediff, muito util para cálculo com datas, exemplo: declare @data datetime set @data = '20091201' select datepart(day,@data) --SELECIONA APENAS O DIA DA DATA select datepart(month,@data) --SELECIONA APENAS O MES DA DATA select datepart(year,@data) --SELECIONA APENAS O ANO DA DATA ele retorna valores inteiros, ou seja, disponíveis para calculos.... Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Vid. 2009 Postado 15 de Julho de 2009 Tópicos Que Criei: 30 Tópicos/Dia: 0.01 Meu Conteúdo: 103 Conteúdo/Dia: 0.02 Reputação: 2 Pontos/Conquistas: 812 Conteúdo Resolvido: 0 Dias Ganho: 2 Status: Offline Denunciar Compartilhar Postado 15 de Julho de 2009 Bom deste exemplo!! Como faço pra buscas o último dia do mês em determinada data?! Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Mauricio J. T. Postado 15 de Julho de 2009 Tópicos Que Criei: 134 Tópicos/Dia: 0.02 Meu Conteúdo: 1.225 Conteúdo/Dia: 0.19 Reputação: 2 Pontos/Conquistas: 7.399 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Dispositivo: Windows Denunciar Compartilhar Postado 15 de Julho de 2009 Soma 1 no mes , força dia 1o nesse mes, ai diminui um dia da data. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Vid. 2009 Postado 15 de Julho de 2009 Tópicos Que Criei: 30 Tópicos/Dia: 0.01 Meu Conteúdo: 103 Conteúdo/Dia: 0.02 Reputação: 2 Pontos/Conquistas: 812 Conteúdo Resolvido: 0 Dias Ganho: 2 Status: Offline Denunciar Compartilhar Postado 15 de Julho de 2009 Soma 1 no mes , força dia 1o nesse mes, ai diminui um dia da data. Valeu.. Apenas incluir -1 na senteça que traz último dia do mês anterior!! Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Priscilinha Postado 15 de Julho de 2009 Tópicos Que Criei: 15 Tópicos/Dia: 0.00 Meu Conteúdo: 285 Conteúdo/Dia: 0.05 Reputação: 1 Pontos/Conquistas: 1.548 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 40 Dispositivo: Windows Denunciar Compartilhar Postado 15 de Julho de 2009 Último dia do mês e ano de uma data A consulta abaixo retorna a data com o ultimo dia do mês e ano da data de desligamento do funcionário SQL SERVER: Select dateadd(day, -day(datademissao), dateadd(month,1,datademissao)) from pfunc - É possível criar uma função no sql sever para ser executada da mesma forma que a função no Oracle ORACLE: Select last_day(datademissao) from pfunc http://www.forumrm.com.br/index.php?showtopic=1364&hl= Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jairo Postado 15 de Julho de 2009 Tópicos Que Criei: 192 Tópicos/Dia: 0.03 Meu Conteúdo: 1.767 Conteúdo/Dia: 0.27 Reputação: 2 Pontos/Conquistas: 10.702 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Idade: 51 Denunciar Compartilhar Postado 15 de Julho de 2009 apenas complementando sobre datas, friso o comando datediff, muito util para cálculo com datas, exemplo:declare @data datetime set @data = '20091201' select datepart(day,@data) --SELECIONA APENAS O DIA DA DATA select datepart(month,@data) --SELECIONA APENAS O MES DA DATA select datepart(year,@data) --SELECIONA APENAS O ANO DA DATA ele retorna valores inteiros, ou seja, disponíveis para calculos.... Oi Lugão ... vc FRISOU mas não exemplificou ... rsrsrs declare @data1 datetime declare @data2 datetime set @data1 = '20091201' set @data2 = '20091231' select datepart(day,@data1) --SELECIONA APENAS O DIA DA DATA1 select datepart(month,@data1) --SELECIONA APENAS O MES DA DATA1 select datepart(year,@data1) --SELECIONA APENAS O ANO DA DATA1 select datediff (day, @data1, @data2) -- MOSTRA A DIFERENÇA EM 'DIAS' ENTRE DATA1 E DATA2 select datediff (day, GETDATE(), @data2) -- MOSTRA A DIFERENÇA EM 'DIAS' ENTRE HOJE E A DATA2 Rodando todo o script acima dá pra ver exatamente o que o Lugão quis dizer ... Outras opções: Parâmetro - Abreviação year - yy, yyyy quarter - qq, q month - mm, m dayofyear - dy, y day - dd, d week - wk, ww Hour - hh minute - mi, n second - ss, s millisecond - ms Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Monica Pardal Postado 16 de Julho de 2009 Tópicos Que Criei: 1 Tópicos/Dia: 0.00 Meu Conteúdo: 19 Conteúdo/Dia: 0.00 Reputação: 1 Pontos/Conquistas: 96 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Denunciar Compartilhar Postado 16 de Julho de 2009 Tá ai, como prometido. Em um Cubo, se você quiser colocar o código e o nome de uma tabela pra mostrar juntos, basta fazer assim: Select CodColigada, CodFilial, NomeFantasia, (cast(CodFilial as varchar) + ' - ' + isnull(NomeFantasia, 'Filial sem nome')) as Filial From Gfilial Order by CodColigada, CodFilial Usei o Cast para transformar o campo CodfFilial em varchar para poder juntar com os outros campos e o ISNull é para não dar erro caso o campo Filial esteja em branco ou nulo. bjs Monica Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Monica Pardal Postado 16 de Julho de 2009 Tópicos Que Criei: 1 Tópicos/Dia: 0.00 Meu Conteúdo: 19 Conteúdo/Dia: 0.00 Reputação: 1 Pontos/Conquistas: 96 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Denunciar Compartilhar Postado 16 de Julho de 2009 Ah, o retorno, ficaria assim: 1, 1, Matriz, 1 - Matriz 1, 2, Filial BH, 2 - Filial BH 1, 3, Filial Rio de Janeiro, 3 - Filial Rio de Janeiro 1, 4, Filial São Paulo, 4 - Filial São Paulo 1, 5, Filial Brasilia, 5 - Filial Brasilia Bem melhor pra usar nos cubos este ultimo campo do que código e nome separados. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Luciano Alibuni Postado 16 de Julho de 2009 Tópicos Que Criei: 5 Tópicos/Dia: 0.00 Meu Conteúdo: 90 Conteúdo/Dia: 0.02 Reputação: 0 Pontos/Conquistas: 507 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 48 Denunciar Compartilhar Postado 16 de Julho de 2009 Uma outra dica também é o uso de parametros de um relatorio para o uso em data na sentença: Ex. SELECT ISNULL(SUM(PFFINANC.VALOR),0) FROM PFFINANC INNER JOIN PFUNC ON PFFINANC.CHAPA = PFUNC.CHAPA INNER JOIN PEVENTO ON PFFINANC.CODEVENTO = PEVENTO.CODIGO WHERE (PEVENTO.PROVDESCBASE = 'P') AND (PFFINANC.MESCOMP =:MES_COMPETENCIA) AND (PFFINANC.ANOCOMP =:ANO_COMPETENCIA) AND (PFFINANC.NROPERIODO = '2') AND (PFUNC.CODSECAO LIKE '01.01%') AND (PFUNC.DATADEMISSAO < convert(varchar(4),:ANO_COMPETENCIA)+'/'+ convert(varchar(2),:MES_COMPETENCIA)+'/'+convert(varchar(2),'01')) Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Lu Zaramela Postado 17 de Julho de 2009 Tópicos Que Criei: 13 Tópicos/Dia: 0.00 Meu Conteúdo: 85 Conteúdo/Dia: 0.02 Reputação: 0 Pontos/Conquistas: 528 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 112 Denunciar Compartilhar Postado 17 de Julho de 2009 Descobrindo o ultimo dia do mês, é bastante interessante e prático: Ultimo dia do mês passado SELECT DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE()),0)) LastDay_Previous Month Ultimo dia do mês corrente SELECT DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE())+1,0)) LastDay_CurrentMonth Ultimo dia do próximo mês SELECT DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE())+2,0)) LastDay_NextMonth Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Vid. 2009 Postado 17 de Julho de 2009 Tópicos Que Criei: 30 Tópicos/Dia: 0.01 Meu Conteúdo: 103 Conteúdo/Dia: 0.02 Reputação: 2 Pontos/Conquistas: 812 Conteúdo Resolvido: 0 Dias Ganho: 2 Status: Offline Denunciar Compartilhar Postado 17 de Julho de 2009 Descobrindo o ultimo dia do mês, é bastante interessante e prático:Ultimo dia do mês passado SELECT DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE()),0)) LastDay_Previous Month Ultimo dia do mês corrente SELECT DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE())+1,0)) LastDay_CurrentMonth Ultimo dia do próximo mês SELECT DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE())+2,0)) LastDay_NextMonth Excelente! Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Vid. 2009 Postado 17 de Julho de 2009 Tópicos Que Criei: 30 Tópicos/Dia: 0.01 Meu Conteúdo: 103 Conteúdo/Dia: 0.02 Reputação: 2 Pontos/Conquistas: 812 Conteúdo Resolvido: 0 Dias Ganho: 2 Status: Offline Denunciar Compartilhar Postado 17 de Julho de 2009 Como eu consigo buscar informações a X meses atrás?! Exemplo: Existe um parâmetro que indica a data: 01/07/2009 Preciso buscar todos lançamentos que venceram a 2 meses desta data!!! Então, seria todos lançamentos vencidoes em Maio de 2009 (de 01/05/2009 a 31/05/2009) Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Lu Zaramela Postado 17 de Julho de 2009 Tópicos Que Criei: 13 Tópicos/Dia: 0.00 Meu Conteúdo: 85 Conteúdo/Dia: 0.02 Reputação: 0 Pontos/Conquistas: 528 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 112 Denunciar Compartilhar Postado 17 de Julho de 2009 Como eu consigo buscar informações a X meses atrás?!Exemplo: Existe um parâmetro que indica a data: 01/07/2009 Preciso buscar todos lançamentos que venceram a 2 meses desta data!!! Então, seria todos lançamentos vencidoes em Maio de 2009 (de 01/05/2009 a 31/05/2009) Vid, Eu postei uma sentença a poucos dias que traz mais ou menos isso...tente adaptar a mesma a sua necessidade. Busque por "total por fornecedor em consulta SQL". Mas neste caso, recomendo a abrir um novo tópico em Suporte, pois este tópico é sobre dicas. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados
Participe da conversa
Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.