MySQL sonraki tarihi seçtikten

2 Cevap php

Ben bir sayfada görüntülemek istediğiniz bir MySQL veritabanında bir tabloda tarih (tarih, bir sadaka kitap sergisi düzenlenecek olan), bir liste var. Bir sayfada ben bir sonraki durak tarihini gösteren ve önümüzdeki ay içinde durak başka tarihlerde ediyorum. (Şu anda bir Sırasız HTML listesini kullanarak ve PHP ile tarih seçerek, ama biraz dağınık, ve ben de veritabanında saklanır bağış toplamları ile tarihleri ​​kravat istiyor değilim).

Ben her hafta için bağış toplamları ile tarihleri ​​kravat böylece olsa veritabanında tarih koymak istiyorum. Düşünüyorum ki ben yakın tarih ile tespit bir kez yukarı gelecek ben ekran için gelecek haftaki tarihini seçmek için 'LIMIT 1' kullanabilirsiniz, ve 'LIMIT 4' ben tarihleri ​​görüntülemek için gereken yere söylemek tarihini ... Ben MySQL tarih biri muhtemelen orada bir his var geçerli tarih belirlenmesi ve daha sonra yakın tarihini seçerek - gelecek ay, ama ne ben çözemiyorum yakın gelecek kadar güncel ile kayıt tanımlamak için nasıl bu yardım, ama ikna edilebilir fonksiyonları tam olarak nasıl bilemiyorum.

Herhangi Bunu yapabilirim nasıl bir fikir?

2 Cevap

If I understand correctly, you can just pick up next four dates that are after today. In MySQL you could use the CURDATE() function for the 'today' bit, then apply an order and limit to your select statement. For example,

SELECT stall_date
FROM   stall_dates
WHERE  stall_date >= CURDATE()  -- >= assumes you want today's to show too
ORDER BY
       stall_date
LIMIT 4

Gerekirse ORDER BY stall_date DESC sıralamasını tersine çevirmek için kullanın.

Sütun bir DATETIME alan ise, SELECT...WHERE event_date > "2009-11-06" ve ORDER BY event_date kullanarak sonraki tanımlayabilirsiniz.

SELECT * FROM so_events 
WHERE event_date > "2009-11-06 15:36:00"
ORDER BY event_date ASC
LIMIT 4

MySQL içten sana olan ve zaman damgası size WHERE maddesinde belirttiğiniz birden büyüktür seçeneğini satırlar için çalışma yapacağız.