Sto costruendo un sito di e-commerce e vorrei offrire sconti su determinati articoli per un tempo limitato.come modellare lo sconto sugli articoli in un database?
Il mio tavolo del prodotto (MySQL) si presenta così:
Product - productId - Name - Weight - Price (price as on the cover of the item)
Devo fare un altro tavolo per occasioni:
Deals - dealID - productID (Foreign Key) - discount (fractional value: percentage) - description
Per gli elementi il recupero:
- Q1: Trova tutti i prodotti in prodotti con productID = tutti gli ID prodotto nella tabella offerte
- q2: Aggiornare il prezzo con lo sconto dal tavolo offerte
- Q3: restituire tutti i prodotti
Esiste un modo migliore per fare questo? Inoltre, come gestisco il caso del deal esistente solo per un tempo limitato?
MODIFICA: Desidero visualizzare quanto sconto offriamo per prodotto. Quindi, ho bisogno di due valori per prodotto, prezzo originale e prezzo scontato per la durata indicata.
ho inviato un follow-up per la soluzione proposta da crontab here
con una tabella dei prezzi dei prodotti, potresti non aver nemmeno bisogno della tabella delle offerte .. le date sono fondamentali. – Randy
@Randy: ecco perché ho detto "invece di creare una tabella di offerte". ;) – Crontab
@Crontab l'approccio ProductPricing è una soluzione piacevole in quanto ha il vantaggio aggiuntivo di consentire rettifiche di prezzo per prodotti che non hanno avuto origine da un'offerta/promozione (ad esempio, l'aumento dei prezzi). È persino possibile memorizzare il motivo dell'ultima modifica di prezzo sulla tabella ProductPricing. –