Är inte säker men det borde väl vara nått sånt här:
SQL = "SELECT TOP 1 * FROM tabell ORDER BY fodelsedatum DESC"
9 svar · 735 visningar · startad av Tmed
Jag håller på med en addressbok som även innehåller födelsedata!
Allt är lagrat i en access databas med namn och tele m.m. Födelsedatat är lagrat som typ Date(ex. 1975-01-01)!
Hur gör jag för att lista ut den person vars födelsedag är
närmast?
Är inte säker men det borde väl vara nått sånt här:
SQL = "SELECT TOP 1 * FROM tabell ORDER BY fodelsedatum DESC"
En fråga bara, ang.
SELECT TOP 1 * FROM tabell
SELECT TOP 1 - Gör detta så att bara första posten hämtas?
Ja precis.
Alltså vill du skriva ut den person vars födelsedatum ligger närmast dagens datum eller?
För isåfall blir det såhär:
SQL = "SELECT * FROM tabellen WHERE fodelsedatumet = '" & date() & "'"
Ja, precis! När man kommer in till "startsidan" för addressboken skall den visa den person vars födelsedag ligger närmast!
Ok...men då blir det så som jag beskrev ovan.
sudden skrev:
Ok...men då blir det så som jag beskrev ovan.
Nej, din kod plockar ut de som har födelsedag just idag.
SQL = "select top 1 * from tabell where fodelsedag > date() order by fodelsedatum asc"
eller något liknande kanske?
Ja det där var mycket bättre ;)
fodelsedag > date()
Antar att fodelsedag komer ha värden som tex 1981-12-09 samtidigt som date() har värdet 2004-11-20.
Vilket gör att den SQL satsen inte kommer funka som du vill. Aldeles för bakfull för att skriva en kod som kommer fungera, men du måste nog enbart bry dig om Månaden och dagen...