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

  • mahalodotcom

    mahalodotcom

    8 HAZİRAN 2007
  • Māris Zaharovs

    Māris Zahar

    28 Mayıs 2008
  • TheDroidDemos

    TheDroidDemo

    15 ŞUBAT 2011