Jump to content
Fórum Script Brasil
  • 0

Campo de Hora no SQL Server


Question

1 answer to this question

Recommended Posts

  • 0

Bom dia,

Depende do que você quer fazer, a maneira mais simples no meu ponto de vista é trabalhar com duas tabelas, uma temporária e a outra principal onde os registros vão ficar já formatados.

Faça importação para uma tabela temporária utilizando colunas nvarchar(X) ou varchar(X), utilizar o "import & export" data do SSMS ou faça um bulkinsert dependendo da quantidades de registros que tem, se a planilha for pequena pode ate usar o oldb e fazer a leitura diretamente da tabela com select e criar uma temp usando a clausula INTO.

Segue exemplos abaixo:

Via SQL Select Oledb :

SELECT * INTO Data_dq
FROM OPENDATASOURCE('Microsoft.ACE.OLEDB.12.0',
    'Data Source=C:\Temp\Data.xlsx;Extended Properties=Excel 12.0')...[Sheet1$];
GO
Via BULKINSERT :

USE ImportFromExcel;
GO
BULK INSERT Data_bi FROM 'C:\Temp\data.csv'
   WITH (
      FIELDTERMINATOR = ',',
      ROWTERMINATOR = '\n'
);
GO

Agora pode converter da forma que desejar  pois já esta importado.

Segue um exemplo  do que se pode fazer

DECLARE @Campo varchar(max) = '168H:34M:55S';

DECLARE @dia int;
DECLARE @Hora int ;
DECLARE @minuto int;
DECLARE @segundo int;

SELECT @Hora =    REPLACE(REPLACE((SUBSTRING(@Campo,1,CHARINDEX(':',@Campo)-1)),'H',''),':','')
      ,@minuto =  REPLACE(REPLACE((SUBSTRING(@Campo,CHARINDEX(':',@Campo),CHARINDEX(':',@Campo)-1)),'M',''),':','')
      ,@segundo = REPLACE(REPLACE((SUBSTRING(@Campo,CHARINDEX('M',@Campo),CHARINDEX(':',@Campo)-1)),'M',''),':','')
 

SELECT @Hora
SELECT @minuto
SELECT @segundo
 

Att,
Marcos Roberto

Edited by Marcos Roberto Vieira Juni
Link to post
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
      148681
    • Total Posts
      644509
×
×
  • Create New...