SQL SORGU: 45 yaşından küçük olanlar

sarigozoglu

Altın Üye
Katılım
26 Eylül 2014
Mesajlar
85
Excel Vers. ve Dili
Office 365 TR-32
Altın Üyelik Bitiş Tarihi
06-01-2025
Arkadaşlar merhaba,

Veritabanımda yapacağım sorgu ile verdiğim tarih itibariyle 45 yaşından küçük olanların listesini almak istiyorum.

Bu sorgu konusunda desteğinize ihtiyacım var.

Örnek sorgu cümlesi aşağıdadır.

" SELECT ADI, SOYADI ,DOGUMTARIHI FROM OGRENCILER WHERE DOGUMTARIHI < '01.01.2018 "

Emek ve yardımlarınız için şimdiden teşekkürler.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,205
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Kontrol ettiğiniz tarihi tek tırnakla sonlandırmamışsınız. Ona dikkat ediniz.

"SELECT ADI, SOYADI ,DOGUMTARIHI FROM OGRENCILER WHERE DOGUMTARIHI < '01.01.2018' "
 
Katılım
24 Nisan 2005
Mesajlar
3,652
Excel Vers. ve Dili
Office 2016 EN 64 Bit
Altın Üyelik Bitiş Tarihi
25/05/2022
Aşağıdaki şekilde deneyiniz

Küçük işareti yerine > olmalı düzeltildi.

Kod:
SELECT ADI, SOYADI ,DOGUMTARIHI FROM OGRENCILER WHERE dateadd(yy,45,DOGUMTARIHI) > '01.01.2018'
 
Son düzenleme:

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,236
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Sorgu aşağıdaki olmalı.
Kod:
[SIZE=2]SELECT ADI, SOYADI, DOGUMTARIHI 
FROM OGRENCILER 
WHERE DATEDIFF(yyyy, DOGUMTARIHI, '2018-01-01') < 45[/SIZE]
.
 

sarigozoglu

Altın Üye
Katılım
26 Eylül 2014
Mesajlar
85
Excel Vers. ve Dili
Office 365 TR-32
Altın Üyelik Bitiş Tarihi
06-01-2025
Sn. Nejdet YEŞERTENER
Sn. Asri
Sn. Zeki GÜRSOY

Destekleriniz için çok teşekkür ederim.

Amma velakin, yapmış olduğumuz sorgu sadece yıl bazlı bir karşılaştırma yapıyor.

Benim için gün ay yıl sorgusu da gerekli
Örneğin 01.01.1973 doğumlu bir kişi,
a) 01.01.2018 ( 01 Ocak ) tarihinde tam 45 yaşında iken,
b) 02.01.2018 ( 02 Ocak ) tarihinde artık 45 yaş 1 gün olarak 45 yaşından büyüktür.

Bana (a) maddesindeki işleyiş gerekli yani tam 45 yaş 0 gün dahil olmak üzere daha küçükler.
diğer bir deyişe (b) maddesi olmayan kayıtlar.
 
Son düzenleme:
Katılım
24 Nisan 2005
Mesajlar
3,652
Excel Vers. ve Dili
Office 2016 EN 64 Bit
Altın Üyelik Bitiş Tarihi
25/05/2022
a) 01.01.2018 ( 01 Ocak ) tarihinde tam 45 yaşında iken,
b) 31.12.2017 ( 31 Aralık ) tarihinde artık 45 yaş 1 gün olarak 45 yaşından büyüktür.
Bu hesabınızda bir yanlışlık olabilir mi?

https://www.timeanddate.com/date/durationresult.html?d1=1&m1=1&y1=1973&d2=31&m2=12&y2=2017&ti=on

Result: 16.436 days

It is 16.436 days from the start date to the end date, end date included
Or 45 years including the end date


https://www.timeanddate.com/date/durationresult.html?d1=1&m1=1&y1=1973&d2=1&m2=1&y2=2018&ti=on
Result: 16.437 days

It is 16.437 days from the start date to the end date, end date included
Or 45 years, 1 day including the end date
 

sarigozoglu

Altın Üye
Katılım
26 Eylül 2014
Mesajlar
85
Excel Vers. ve Dili
Office 365 TR-32
Altın Üyelik Bitiş Tarihi
06-01-2025
Bu hesabınızda bir yanlışlık olabilir mi?
Sn. Asri çok haklısınız, kusura bakmayın.

Düzeltiyorum
a) 01.01.2018 ( 01 Ocak ) tarihinde tam 45 yaşında iken,
b) 02.01.2018 ( 02 Ocak ) tarihinde artık 45 yaş 1 gün olarak 45 yaşından büyüktür.

Aslında benim sorgum her zaman ayın 1. gününden geriye doğru yapılmakta.
Kullanacağım alana göre esas örneklemem aşağıdaki gibidir.

01.04.2017 tarihi itibariyle,
30.03.1972 dahil, önceki tarihte doğanlar 45 yaşından büyüktür.
01.04.1972 dahil, sonrası tarihte doğanlar 45 yaşından küçüktür.
 
Son düzenleme:

sarigozoglu

Altın Üye
Katılım
26 Eylül 2014
Mesajlar
85
Excel Vers. ve Dili
Office 365 TR-32
Altın Üyelik Bitiş Tarihi
06-01-2025
Destek olabilecek bir arkadaşımız var mı acaba ?
 
Üst