[]

Veritabanı kurgusu sorsam?

şimdi bir site yapıcam. sitedeki satış/rezervasyon işlemleri için satıcılar şöyle filtreler koyabilecek:

"Her çarşamba x tl yap"
"Her günün 10.00 18.00 arası alışverişleri x tl yap"
"Her cumartesi x tl yap"

gibi komutlar verebielcekler.

burada tek bir ürün satılıyor ve ürünün fiyatı atıyorum: 200tl.
"çarşamba günleri 150tl'den sat" diyecek, o fiyattan satılacak. ama tüm çarşambalar için.

"sabah 10.00 - 18.00 arası olan rezervasyonları 120tl yap" diyecek ve tüm günler için geçerli olacak.

21 ekim ile 30 ekim arasında 140tl yap diyecek.

vs.

şimdi, ben bunu nasıl bir veritabanı kurgusunda işleyebilirim sizce?

edit: yani söylemeye çalıştığım şey, bunca farklı zaman türü varken (bir tanesi çarşambaları alıyor, bir tanesi saat alıyor, bir tanesi tarih aralığı alıyor) bunları en güzel nasıl bir kurguda tamamlayabilirim?

indirim diye bir tablom olsa

tablonun bir sütunu: kıstas diğer sütunu fiyat olsa, diye düşündüm. ı-ıh olmadı. nasıl olur?

 
2 farklı tablo yapıpı ürünleri (ID) birbirine bağlaman lazım bence. indirim tablosunda indirim tipi (günlük, saatlik, vb) olur, başlangıç günü ve saati, bitiş günü ve saati, indirimli fiyat olur (mesela yani). sayfa yüklendiğinde tabloda sorgu atarsın, ya da esas ürün tablonda indirimli? şeklinden bir boolean olur, 1 ise gider indirim tablosuna bakar. ilk anda aklıma gelenler bunlar...


  • loveinaflipbook  (29.09.15 16:17:22 ~ 16:18:05) 
eger dogru anladiysam, tek bir urun yerine birden fazla urun ayarlamaniz daha dogru olabilir. mesela normalde NORMALURUN isimli bir urun satilirken, carsamba gunleri CARSAMBAURUN isimli bir urun satilir.

10:00 - 18:00 arasi olan rezervasyonlari, 1018URUN diye satarsiniz

cok da pratik olur gibime geliyor
  • co2s2  (29.09.15 16:21:01) 
"cos2s2" nin fikrine katiliyorum cünkü bir ürünü 10TL den sattin, bir de indirimli zamanda 5TL den sattin. ürünün fiyatini yani 10TL yi bir tabloda tutuyorsun, indirimli fiyati diger tabloda. yarin bir gün bu üründen ne kadar kazandim dersen ve hesapla yaparsan iki tabloyu da hesaba katmalisin, isler cok karisir. En temizi indirimli ürüne farkli bir id vermek yani mevcut ürün tablosuna;

"ana_ürün", "satis_baslangic_tarih_saat", "satis_bitis_tarih_saat" gibi üc sütun eklersin.

Örnek vermek gerekirse
id | ana_ürün | ürün_ismi | satis_baslangic_tarih_saat | satis_bitis_tarih_saat
1 | 0 | kitap | 01.01.1999 00:00 | 01.01.2999 00:00
2 | 1 | kitap(indirimli) | 12.10.2015 10:00 | 12.10.2015 12:00

bu örnekte bir kitap ürünü var 1 nolu id ye sahip, satis tarihi gecmisten sonsuza (01.01.1999 00:00 - 01.01.2999 00:00) gidiyor. diger indirimli kitap ürünü ise 2 nolu id ye sahip ve ana ürün olarak 1 nolu ürünü gösteriyor. yani o ürünün aynisi ama fiyati ve satis tarihleri farkli, sadece verilen aralik icin satis yapiyor, yani sadce 12.10.2015 10:00 - 12.10.2015 12:00 tarihleri arasinda 2 saat satista. yani ürün sadece iki saat satista kalacak. Burada 1 no lu ürünün ana ürün id si 0 olmasi da gösteriyor ki o ürünün ana ürünü yok, zaten kendi ana ürün.

bu sana süper esneklik saglar hem raporlamada hem sorgularinda ekstra bir degisiklik yapman gerekmez. sadece baslangic ve bitis tarihlerini programlama dili ile hesaplayip girmen gerekli. ayrica indexleme gibi bircok durumda basitlik saglar.
  • emrahday  (29.09.15 17:53:26 ~ 18:01:15) 
1
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler angelus, Artibir, aychovsky, baba jo, basond, compumaster, deckard, duyulmasi gerektigi kadar, fader, fraise, groove salad, kahvegibi, kaymaktutmayansicaksut, kibritsuyu, monstro, pandispanya, robin, ron dennis
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır. Skimlinks ile linkler üzerinden yönlendirme payı alınmaktadır.