Usuário com melhor resposta
Comparar datas

Pergunta
-
Boas pessoal
Estou com um problema Lixado.... -_-
Na altura de fazer um update preciso de comparar dois campos na base de dados SQL. Esses campos estão formatos como time(0) - hh:mm:ss.
Se um for maior que outro ele escreve que Sim na coluna A senão escreve que Não.
Como fazo isso?
Isto tudo via vb.
Utilizo este comando para trabalhar com a bd: command.Parameters.Add("@form", SqlDbType.NVarChar).Value = "2"
é um exemplo..
Obirgado
Respostas
-
Flashed,
Via VB ou via TSQL?
Via TSQL ficaria:
SELECT Nome,
CASE
WHEN IdadeNova > IdadeAntiga THEN 'SIM'
ELSE 'Não END AS Teste
FROM Tabela
Fabrizzio A. Caputo
MCT
Certificações:
Oracle OCA 11g
MCITP SQL Server 2008 Implementation and Maintenance
MCITP SQL Server 2008 Developer
Blog Pessoal: www.fabrizziocaputo.wordpress.com
Blog Empresa: www.tripletech.com.br/blog
Twitter: @FabrizzioCaputo
Email: fabrizzio.antoniaci@gmail.com- Marcado como Resposta Jonas São Paulo sexta-feira, 27 de janeiro de 2012 09:51
-
Flashed,
Outra possibilidade via T-SQL seria utilizar a função Datediff em conjunto com o comando IF.
If (Select Datediff(d, IdadeNova, IdadeAntiga) from Tabela )>=1 Then
Print 'Sim'
Else
Print 'Não'
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]- Editado Junior Galvão - MVPMVP, Moderator quarta-feira, 18 de janeiro de 2012 23:02
- Marcado como Resposta Jonas São Paulo sexta-feira, 27 de janeiro de 2012 09:51
Todas as Respostas
-
Flashed,
Via VB ou via TSQL?
Via TSQL ficaria:
SELECT Nome,
CASE
WHEN IdadeNova > IdadeAntiga THEN 'SIM'
ELSE 'Não END AS Teste
FROM Tabela
Fabrizzio A. Caputo
MCT
Certificações:
Oracle OCA 11g
MCITP SQL Server 2008 Implementation and Maintenance
MCITP SQL Server 2008 Developer
Blog Pessoal: www.fabrizziocaputo.wordpress.com
Blog Empresa: www.tripletech.com.br/blog
Twitter: @FabrizzioCaputo
Email: fabrizzio.antoniaci@gmail.com- Marcado como Resposta Jonas São Paulo sexta-feira, 27 de janeiro de 2012 09:51
-
Flashed,
Outra possibilidade via T-SQL seria utilizar a função Datediff em conjunto com o comando IF.
If (Select Datediff(d, IdadeNova, IdadeAntiga) from Tabela )>=1 Then
Print 'Sim'
Else
Print 'Não'
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]- Editado Junior Galvão - MVPMVP, Moderator quarta-feira, 18 de janeiro de 2012 23:02
- Marcado como Resposta Jonas São Paulo sexta-feira, 27 de janeiro de 2012 09:51
-
Flashed,
Alguma novidade neste assunto?
Fabrizzio A. Caputo
MCT
Certificações:
Oracle OCA 11g
MCITP SQL Server 2008 Implementation and Maintenance
MCITP SQL Server 2008 Developer
Blog Pessoal: www.fabrizziocaputo.wordpress.com
Blog Empresa: www.tripletech.com.br/blog
Twitter: @FabrizzioCaputo
Email: fabrizzio.antoniaci@gmail.com -
Boas
Desculpem a ausência.
Acabei por me desenrascar convertendo as datas em numero ;) e assim fazo uma comparação como se fossem numeros.
Numa proxima vou utilizar os vossos exemplos, pois estive a ler sobre instruções TSQL e são muito mais vantajosa ;)
Obrigado
Visual Basic 2008 Express Edition SQL Server Management Studio flashedr8@gmail.com