Arkadaşlar merhaba,
Sorunum şu; iki adet tablom var. Birisi kullanıcıların bilgilerinin kayıtlı olduğu tablo diğeri kullanıcıların girişlerini tutuyor. Ben son 24 saatte 3 defadan daha az giriş yapan kişilerin adını soyadını listeletmek istiyorum. Bunu nasıl yapabilirim.
Kullanıcı Tablosu:
kullanici_id | kullanici_adi | kullanici_soyadi
Giriş Yapanlar Tablosu
giris_id | kullanici id | giris_tarihi
Kullanıcı siteye her girdiğinde giriş tablosuna giriş tarihi ile ekleniyor. Ben son 24 saatte 3 defadan daha az giriş yapanları listeletmek istiyorum. yalnız bunu php ile değil mysql ile yapmak istiyorum.
Mysql Sorgusu yardım
8
●439
- 04-06-2015, 12:58:21Çok teşekkür ederim reddoc sağol.reddoc adlı üyeden alıntı: mesajı görüntüle
- 05-06-2015, 12:04:09Kimlik doğrulama veya yönetimden onay bekliyor.Buna benzer bir soru da ben sormak istiyorum
time() fonksiyonu ile veritabanıma kayıt geliyor.
between current_timestamp and current_timestamp - interval 24 hour
yi kullansam o andan itibaret 24 saat geriye giderek veri döndürecek
peki bunu belirli bir dilimde yapmanın bir yolu var mı
mesela son 24 saat olarak değil de söyle olsa
şu an saat 05.06.2015 12.01 bunun karşığı zaman damgası 1433494865 olsun
bana bundan geriye 24 saati değil de 04.06.2014 00:00 - 04.06.2014 23:59 aralığında olan geçmiş tam bir günün aralığı versin?
bu mümkün mü? - 05-06-2015, 15:08:32$tarih1 = strtotime('04.06.2014 00:00');oguzhan306 adlı üyeden alıntı: mesajı görüntüle
$tarih2 = strtotime('04.06.2014 23:59');
where $tarih1 <= tarih and $tarih2 >= tarih
$tarih1 = ilk tarih
$tarih2 = son tarih
tarih = time() fonksiyonuyla verinin eklendiği sütun. - 05-06-2015, 15:26:45Sabit bir tarih olsa is kolay zaten bu kadar uzatmadan sorguyla da is cozulur. Hergun bir onceki gun degisecekturhanli adlı üyeden alıntı: mesajı görüntüle
- 06-06-2015, 11:37:31$dun = mktime(0, 0, 0, date("m") , date("d")-1, date("Y"));oguzhan306 adlı üyeden alıntı: mesajı görüntüle
$tarih1 = strtotime(date('d.m.Y', $dun). ' 00:00');
$tarih2 = strtotime(date('d.m.Y', $dun). ' 23:59'); - 06-06-2015, 22:08:29Üyeliği durdurulduarkadaş cevabını vermiş zatenreddoc adlı üyeden alıntı: mesajı görüntüle
- 09-06-2015, 19:09:16Tabiki mümkünoguzhan306 adlı üyeden alıntı: mesajı görüntüle
mysql> select date_format(CURRENT_TIMESTAMP,"%Y-%m-%d 00:00:00"); +----------------------------------------------------+ | date_format(CURRENT_TIMESTAMP,"%Y-%m-%d 00:00:00") | +----------------------------------------------------+ | 2015-06-09 00:00:00 | +----------------------------------------------------+ 1 row in set (0.00 sec) mysql> select date_format(CURRENT_TIMESTAMP,"%Y-%m-%d 23:59:59"); +----------------------------------------------------+ | date_format(CURRENT_TIMESTAMP,"%Y-%m-%d 23:59:59") | +----------------------------------------------------+ | 2015-06-09 23:59:59 | +----------------------------------------------------+ 1 row in set (0.00 sec)