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

  • ChrisCrossMedia

    ChrisCrossMe

    17 EYLÜL 2009
  • DRDAnimation

    DRDAnimation

    28 EYLÜL 2012
  • sk8ingis4me

    sk8ingis4me

    16 Mart 2006