SORU
15 EKİM 2009, PERŞEMBE


Yaş (yıl) ve getDate Doğum Tarihini hesaplamak için nasıl()

Bir masa da doğum tarihi ile birlikte insanlar (şu anda bir nvarchar(25)) listede

Nasıl bir tarih dönüştürmek ve kendi yaş hesaplamak yıl sonra alabilir miyim?

Verilerimi gibi görünüyor

ID    Name   DOB
1     John   1992-01-09 00:00:00
2     Sally  1959-05-20 00:00:00

Görmek istiyorum:

ID    Name   AGE  DOB
1     John   17   1992-01-09 00:00:00
2     Sally  50   1959-05-20 00:00:00

Çok teşekkürler!

CEVAP
15 EKİM 2009, PERŞEMBE


bunu deneyin:

DECLARE @dob  datetime
SET @dob='1992-01-09 00:00:00'

SELECT DATEDIFF(hour,@dob,GETDATE())/8766.0 AS AgeYearsDecimal
    ,CONVERT(int,ROUND(DATEDIFF(hour,@dob,GETDATE())/8766.0,0)) AS AgeYearsIntRound
    ,DATEDIFF(hour,@dob,GETDATE())/8766 AS AgeYearsIntTrunc

ÇIKIŞ:

AgeYearsDecimal                         AgeYearsIntRound AgeYearsIntTrunc
--------------------------------------- ---------------- ----------------
17.767054                               18               17

(1 row(s) affected)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • buttheadgsxr1000

    buttheadgsxr

    24 Ocak 2008
  • Capcom Unity

    Capcom Unity

    5 NİSAN 2010
  • ethr95awd

    ethr95awd

    8 Kasım 2006