Ben birçok özellik, liste sonuç tabloları ile birlikte, bir futbol sitesi cadı üzerinde çalışıyorum. Tabloları (cadı yeni sezon, vb 2009/2010 ve 2008/2009 gibi, başlar her oluşturulur) mevsim (sezon isim, vb) ve mermi arasında ayrılır
mermi tablo bir başlangıç tarihi ve bitiş tarihi vardır, ve ben dinamically ben web sitesi Önyüzde çalışmak gerektiğini wich yuvarlak bilmek zorunda tek yolu aynı sezon ilişkin kalan mermi ile bu tarihleri karşılaştırarak olduğunu.
Tüm veriler bir xml getirilen ve tarihleri şöyle:
2009-08-16
Yani, benim 2 sorunları:
- tarihlerini karşılaştırmak (ve muhtemelen on-the-fly çevirebiliriz) ve cadı yuvarlak büyük bitiş tarihi vardır bulmak;
- Doğru yuvarlak olsun (bazı turlarda zaten veritabanında olabilir ama geçerli yuvarlak başka öncesinde olanlar, ne demek istediğimi biliyorum olabilir)
Ben uzman veya SQL ile bir şey değilim, bu yüzden siz bunu nasıl bilmek istiyorum.
İşte benim geçerli sorgu var:
SELECT seasons.competition_id AS cid,
seasons.id AS sid,
rounds.id AS rid,
seasons.start_date AS sstart,
seasons.end_date AS send,
rounds.start_date AS rstart,
rounds.end_date AS rend,
round_groups.id AS rgid
FROM seasons
INNER JOIN rounds ON seasons.id=rounds.season_id
LEFT JOIN round_groups ON rounds.id=round_groups.round_id
ps: Belirli bir sezon UEFA ve Şampiyonlar gibi, gruba ayrılmıştır zaman kullanılır, ben söylemeyi unutmuşum round_groups tablosunu görebilirsiniz.
EDIT:
Bazı yarışmalar sezon sponsoru ilişkin kendi adını değiştirmek çünkü sezon bir kez sezon başı güncellenen veritabanı üzerinde bir giriştir. Kez sezon başına yuvarlak değişiklikler, en azından, ama fazla değişiklik olabilir. UEFA gibi bazı yarışmalarda, onlar yine, wich 3 farklı turlarda neden olacak bazı ilk eleme tur, daha sonra bir grup fazı ve ardından ortadan kaldırılması var. Nihai çıktı her sezon ile ilgili şu anda aktif her turda bir liste olmalıdır.