Jump to content
Fórum Script Brasil
  • 0

SQL - Datas


Guest Rodrigo Rocha

Question

Guest Rodrigo Rocha

Uma alma caridosa e que tenhas 2 minutos a pensar em algo que para mim demoraria 3 / dias..

Precisava de uma query algo muito complicado para quem não sabe nada de sql, mas para alguém entendido é facilimo.. digo eu... ;)

Tenho dois campos no formato "data hora" do estilo "dd:mm:aaaa hh:mm:ss" em que um dos campos se chama data0 e o segundo se chama data1.

Basicamente o que precisava era que o segundo campo "data1" fosse actualizado com o primeiro campo "data0" mas que no campo "data1" os segundos fossem substituidos pelos segundos da data do sistema...

alguém poderá postar a query que pode fazer isso directamente no "sql menagement studio 2005" ... muito obrigado ás almas caridosas que se interessarem pelo assunto..

Atentamente o Rodrigo Desesperado..

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0
Guest obrigado pelo teu interesse..
oi rodrigo, ainda ta meio confusa a tua duvida... se possivel poste um exemplo do que você quer

muito agradecido...

então é assim.. tenho uma tabela com varios campos, em que dois deles registam datas no formato 'dd:mm:aaaa hh:m:ss' em que:

dd = dia / mm = mes / aaaa = ano / hh=horas / mm = minutos / ss = segundos.

O que acontece é que em um dos campos os segundos são registados sempre a '00', e o outro campo data é registado normalmente, com os segundos normais.. o que eu pretendia de alguém com sabedoria imensa no SQL, quando comparada com a minha, era que no segundo campo de data (data1) este campo fosse actualizado com a primeira data (data0) mas que do tal campo data0 lhe fossem retirados os '00' dos segundos e fossem substituidos por um numero aleétório entre '0' e '59' sendo depois essa data colocada (set) no campo data1. Ex.:

data0 = 01:12:2007 14:55:00

Data1 = 31:12:2007 18:10:56

Colocar (set) a data0 na data1 sendo que antes de ser colocada os '00' serão substituidos por um numero aleétorio entre 0 e 59, por exemplo Data1 = Data0( 01:12:2007 14:55: )_sem_os_00 + Numero_aleétorio_entre(00, 59)

Ok???

será que me podiam ajudar??? muito agradecido...

Link to comment
Share on other sites

  • 0

talvez ajude ae, da uma olhada

set dateformat dmy
DECLARE @dtini AS VARCHAR(20)
DECLARE @dtfin AS VARCHAR(20)

set @dtini = '14/02/2007 15:45:15'
set @dtfin = '14/02/2007 00:00:00'

DECLARE @dataatual AS DATETIME

SET @dataatual = GETDATE()

DECLARE @dataForm AS VARCHAR(30)

--PEGANDO A DATA DE @dtfin
SET @dataForm = CAST(DAY(@dtfin) AS VARCHAR(2))
SET @dataForm = @dataForm + '/' + CAST(MONTH(@dtfin) AS VARCHAR(2))
SET @dataForm = @dataForm + '/' + CAST(YEAR(@dtfin) AS CHAR(4))

--PEGANDO HORA, MINUTOS, SEGUNDOS E MILISEGUNDOS DA DATA ATUAL (SERVIDOR)
SET @dataForm = @dataForm + ' ' + CAST(DATEPART(hh,@dataatual) AS VARCHAR(2))
SET @dataForm = @dataForm + ':' + CAST(DATEPART(n,@dataatual) AS VARCHAR(2))
SET @dataForm = @dataForm + ':' + CAST(DATEPART(s,@dataatual) AS VARCHAR(2))
SET @dataForm = @dataForm + ':' + CAST(DATEPART(ms,@dataatual) AS VARCHAR(4))

PRINT 'Data Atual: ' + CAST((@dataatual) as VARCHAR(20))
PRINT '@dtini: ' + @dtini
PRINT '@dtfin: ' + @dtfin
PRINT '@dataForm: ' + @dataForm

saida

Data Atual: Feb 14 2008 9:22PM

@dtini: 14/02/2007 15:45:15

@dtfin: 14/02/2007 00:00:00

@dataForm: 14/2/2007 21:22:7:990

Link to comment
Share on other sites

  • 0
Guest rodrigo rocha

muito obrigado pela tua ajuda.. não imaginas o quanto agradecido estou..

obrigadão...

não é bem isto mas vai ajudar muito mesmo... também tenho de por esta carola a funcionar.. não serve só para segurar o pouco cabelo que tenho.. ;) fica bem...

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152k
    • Total Posts
      651.8k
×
×
  • Create New...