---
title: "Hur gammal är personen"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/134764-hur-gammal-är-personen"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "daniel_ra"
published: "2005-09-24T18:00:02.000Z"
updated: "2005-09-25T11:09:28.000Z"
replies: 4
views: 848
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/134764-hur-gammal-är-personen"
---

# Hur gammal är personen

## #1 — daniel_ra, 2005-09-24T18:00Z

Jag har en post i db (selserver) som heter datetime. antar att det är datumformat. Hur tar jag reda på hur gammal en person är om jag anger ett födelsedatum såsom 19800501 alltså dagens datum minus det som är i fältet??

hoppas ni fattar

Permalänk: https://www.webforum.nu/p/134764

## #2 — Engine^, 2005-09-24T19:20Z

Det är en liten beräkningsfråga det där, men med hjälp av

```
select datediff( yy, [i]post[/i], getdate() )
from db
```

så får du fram hur många år det har gått sedan personen föddes.
Efter det får du kolla om dagens datum är före eller efter födelsedatumet och subtrahera 1 år om dagens datum är före.

Permalänk: https://www.webforum.nu/p/1677819

## #3 — Engine^, 2005-09-24T19:33Z

Det går ju förstås att göra datumjämförelsen direkt i sql...

```
select datediff( yy, [i]post[/i], getdate() ) -
  case when datepart( m, [i]post[/i] ) < datepart( m, getdate() )
    and datepart( d, [i]post[/i] ) < datepart( d, getdate() )
  then 1
  else 0
  end
```

Permalänk: https://www.webforum.nu/p/1677822

## #4 — Hulth, 2005-09-25T08:54Z

```
<%
' Ta reda på en ålder
Function convAge(DateOfBirth)
	If isDate(DateOfBirth) Then
		convAge = DateDiff("yyyy", DateOfBirth, Date) + (DateSerial(Year(Date), Month(DateOfBirth), Day(DateOfBirth)) > Date)
	End If
End Function
%>
```

Anropas med personnummer, tex

```
<% Response.Write convAge("1986-09-19") %>
```

och skriver då ut skillnaden i år mellan dagens datum och det datum, i detta fall 19.

Permalänk: https://www.webforum.nu/p/1677894

## #5 — Engine^, 2005-09-25T11:09Z

Den funktionen är vb only, eftersom true = -1 i vb (vilket för övrigt är helt #¤%& idiotiskt).

Permalänk: https://www.webforum.nu/p/1677926

---

Tråden på webben: https://www.webforum.nu/amne/asp/134764-hur-gammal-är-personen
