Zoque.Forum
Dirsek Teması:
Geri Dön Zoque.Forum » Webmaster Kaynaklari » Sunucu Tabanlı Programlama (Server Side) » Veritabanları » en yakın doğum gününü hesaplama


Yanıt
 
LinkBack Seçenekler
Old 28.05.2008   #1 (permalink)
 
hasan's Avatar
 
Üyelik Tarihi: 21.05.2007
Yer: Ankara
Yaş: 26
Mesaj: 56
en yakın doğum gününü hesaplama


Veritabanımızda üyelerimizin isim soyisim ve doğum günü gibi bilgilerini tutuyoruz. bu üyelerden hangisinin doğum günü en yakın, SQL de tek bir sorgu ile hesaplayabilir miyiz? Aklımdan geçen şu, web sayfasında bugün doğan üyelerimiz adı altında o gün doğum günü olan üye isimleri listelenecek. eğer o gün doğan üye yok ise doğum günü en yakın olanı göster şeklinde. Nasıl yapabiliriz?
hasan şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 29.05.2008   #2 (permalink)
 
absconder's Avatar
 
Üyelik Tarihi: 09.12.2000
Yer: istanbul
Yaş: 30
Mesaj: 1,972
Re: en yakın doğum gününü hesaplama

aşağıdaki kod, bu günden itibaren en yakın zamandaki doğum günü olan kişilerin verilerini çeker. aralık sonu için yıl eklenmesi gerekebilir, test etmedim

Kod:
SELECT * 
FROM tablo_adi 
	WHERE MONTH(dogum_tarihi)*31 + DAY(dogum_tarihi) in (
		SELECT MIN(MONTH(dogum_tarihi)*31 + DAY(dogum_tarihi)) 
		FROM tablo_adi 
		WHERE MONTH(dogum_tarihi)*31 + DAY(dogum_tarihi) >= MONTH(getdate())*31 + DAY(getdate()))
__________________
"oturduğum mahallenin yolları çamurluydu, boyalı ayakkabı giysem bile, o yollardan geçtikten sonra çamurlanmamaları mümkün değildi. hayatım da böyle." yılmaz güney
http://www.sipidik.com
absconder şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 29.05.2008   #3 (permalink)
BYK
 
BYK's Avatar
 
Üyelik Tarihi: 08.04.2003
Yer: Ankara
Yaş: 20
Mesaj: 731
Görsel: 8
Re: en yakın doğum gününü hesaplama

MySQL'in tarih işlevleri sayesinde bir sorgu içerisinde şu anki tarihten bir alanda tutulan tarihi çıkartıp aralarındaki farka göre sıralatabilirsiniz. Hatta ben zamanında yapmıştım, gayet güzel çalışıyor
__________________
Hayata gülümse!

Fotoğraf Sergim - www.fototonik.com/madbyk@gmail.com/Denemeler
BYK şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 29.05.2008   #4 (permalink)
 
hasan's Avatar
 
Üyelik Tarihi: 21.05.2007
Yer: Ankara
Yaş: 26
Mesaj: 56
Re: en yakın doğum gününü hesaplama

@absconder cevabın için teşekkürler. ama en yakın doğum günü bir sonraki yıl içerisinde olursa sonuç vermiyor. yardımın için teşekkürler.
hasan şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 29.05.2008   #5 (permalink)
 
absconder's Avatar
 
Üyelik Tarihi: 09.12.2000
Yer: istanbul
Yaş: 30
Mesaj: 1,972
Re: en yakın doğum gününü hesaplama

biraz uzun oldu ama

Kod:
SELECT * 
FROM tablo_adi 
	WHERE MONTH(dogum_tarihi)*31 + DAY(dogum_tarihi) in (
		SELECT MIN(MONTH(dogum_tarihi)*31 + DAY(dogum_tarihi)) 
		FROM tablo_adi 
		WHERE MONTH(dogum_tarihi)*31 + DAY(dogum_tarihi) >= MONTH(getdate())*31 + DAY(getdate()))
UNION ALL
SELECT * 
FROM tablo_adi 
	WHERE MONTH(dogum_tarihi)*31 + DAY(dogum_tarihi) in (
		SELECT MIN(MONTH(dogum_tarihi)*31 + DAY(dogum_tarihi)) 
		FROM tablo_adi 
		WHERE 0=(SELECT COUNT(*) 
					FROM tablo_adi 
						WHERE MONTH(dogum_tarihi)*31 + DAY(dogum_tarihi) in (
							SELECT MIN(MONTH(dogum_tarihi)*31 + DAY(dogum_tarihi)) 
							FROM tablo_adi 
							WHERE MONTH(dogum_tarihi)*31 + DAY(dogum_tarihi) >= MONTH(getdate())*31 + DAY(getdate()))))
__________________
"oturduğum mahallenin yolları çamurluydu, boyalı ayakkabı giysem bile, o yollardan geçtikten sonra çamurlanmamaları mümkün değildi. hayatım da böyle." yılmaz güney
http://www.sipidik.com
absconder şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 30.05.2008   #6 (permalink)
 
hasan's Avatar
 
Üyelik Tarihi: 21.05.2007
Yer: Ankara
Yaş: 26
Mesaj: 56
Re: en yakın doğum gününü hesaplama

@absconder yardımların için teşekkürler ama bu "küçük, ufacık, kısacık, cümlecik" de sorunumu çözemedi. en kötü ihtimal yazılım kısmında halletmeye çalışacağım.
hasan şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Sponsorlu Bağlantılar
Zoque.Forum
Reklam
Yanıt

Etiketler

dogum , dogum gunu , gunu , hesaplama


 
Zoque'a hoşgeldiniz!
Zoque 27.02.1999 tarihinde yayın hayatına başlamış, paylaşıma dayalı bir oluşumdur. Tasarım, teknoloji, web, kültür ve sanat ana başlıkları altında bilgi paylaşımı ve benzer değerlere sahip katılımcıların birbirleriyle iletişime girmelerine imkan sağlar. "Az ama Öz" sloganından yola çıkarak, kaliteli ve nitelikli katılımı temel alır.

Saygın ve ciddi bir ortamda yardımlaşmak, haberleşmek, kendi bildiklerini diğer katılımcılarla paylaşmak isteyen, oluşumumuza düzenli katılımda bulunacağı inancını taşıyan konuklarımızı üye olmaya davet ediyoruz. [ » ]


Üye Girişi:

En popüler ilk 100 etiket
Tag Cloud
acil adsl ajax almak arama araniyor ariyorum ariyoruz asp bilen bilgi bilgisayar blog calisma canon css dijital div domain dosya eleman film firefox flash font form forum fotograf freelance google gore grafik grafiker hakkinda hangi hata hatasi hosting html ilgili ilk image internet istanbul istiyorum java javascript karakter kayit kisisel kullanimi link logo mac mail menu muzik mysql nasil neden nedir online photoshop php problemi program programi reklam resim satilik sayfa script server ses sistemi site sitesi son soru sorun sorunsali sorunu sql swf tasarim tasarimci tasarimcisi tasarimi turk turkce veri video web windows wordpress xml yardim yazi yeni zoque
Zoque RSS Aboneliği
Son eklenen konuları e-posta ile haber verelim mi?

Forum Yazılımı: vBulletin® Version 3.7.4 Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

Arayüz/Skin "Güneş" © www.zoque.com / net. Copyright © 1999 - 2008
Forum Saati GMT +2. Şu anda saat: 08:12.