Comment concevoir la structure de la table de coupons du centre commercial dans MySQL ?
Avec le développement rapide du commerce électronique, les coupons sont devenus l'une des méthodes marketing importantes pour attirer les utilisateurs. Dans un système de centre commercial, il est très important de bien concevoir la structure de la table des coupons. Cet article explique comment concevoir la structure de la table de coupons du centre commercial dans MySQL et fournit des exemples de code spécifiques.
coupons
pour stocker les informations sur les coupons du centre commercial : CREATE TABLE `coupons` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name ` VARCHAR(100) NOT NULL, `type` ENUM('full_reduction', 'discount', 'free_shipping') NOT NULL, `value` DECIMAL(10,2) NOT NULL, `min_amount` DECIMAL(10,2) DEFAULT 0, `start_time` DATETIME NOT NULL, `end_time` DATETIME NOT NULL, `total_count` INT(11) NOT NULL, `claimed_count` INT(11) NOT NULL DEFAULT 0, PRIMARY KEY (`id`) );
Coupons et utilisateurs du centre commercial Associationcoupons
的表来存储商城的优惠券信息:
CREATE TABLE `user_coupons` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `user_id` INT(11) NOT NULL, `coupon_id` INT(11) NOT NULL, `claimed_time` DATETIME NOT NULL, `used_time` DATETIME DEFAULT NULL, PRIMARY KEY (`id`), INDEX (`user_id`), INDEX (`coupon_id`), FOREIGN KEY (`user_id`) REFERENCES `users` (`id`), FOREIGN KEY (`coupon_id`) REFERENCES `coupons` (`id`) );
user_coupons
的表来存储用户和优惠券的关联信息:CREATE TABLE `coupon_scenes` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `coupon_id` INT(11) NOT NULL, `product_id` INT(11) DEFAULT NULL, `category_id` INT(11) DEFAULT NULL, `order_id` INT(11) DEFAULT NULL, PRIMARY KEY (`id`), FOREIGN KEY (`coupon_id`) REFERENCES `coupons` (`id`), FOREIGN KEY (`product_id`) REFERENCES `products` (`id`), FOREIGN KEY (`category_id`) REFERENCES `categories` (`id`), FOREIGN KEY (`order_id`) REFERENCES `orders` (`id`) );
在这个表中,user_id
和coupon_id
分别引用了users
表和coupons
表中的唯一标识符,通过外键关联保证数据的完整性。
通过这个表,我们可以方便地查询某个用户已领取的优惠券和已使用的优惠券。
coupon_scenes
的表来存储优惠券适用的场景信息。以下是一种可能的设计方式:在这个表中,coupon_id
引用了coupons
表中的唯一标识符,product_id
、category_id
和order_id
分别引用了products
表、categories
表和orders
En plus des attributs de base, les coupons du centre commercial doivent également être associés aux utilisateurs pour faciliter l'enregistrement de la réception et de l'utilisation des coupons par l'utilisateur. Vous pouvez utiliser l'exemple de code suivant pour créer une table nommée user_coupons
pour stocker les informations relatives à l'utilisateur et au coupon :
rrreee
Dans cette table,user_id
et coupon_id fait référence à l'identifiant unique dans la table <code>users
et la table coupons
respectivement, garantissant l'intégrité des données grâce à l'association de clé étrangère. Grâce à ce tableau, nous pouvons facilement interroger les coupons qu'un utilisateur a reçus et les coupons qui ont été utilisés.
coupon_scenes
pour stocker les informations de scène pour lesquelles le coupon est applicable. Voici une conception possible : 🎜🎜rrreee🎜Dans ce tableau, coupon_id
fait référence à l'identifiant unique dans la table coupons
, product_id
, category_id
et order_id
référencent respectivement la table products
, la table categories
et les orders
L'identifiant unique dans la table assure l'intégrité des données et la commodité des requêtes grâce à une association de clé étrangère. 🎜🎜Grâce à ce tableau, nous pouvons enregistrer l'utilisation des coupons dans différents scénarios. Par exemple, un coupon n'est applicable qu'à un produit spécifique ou à une commande spécifique. 🎜🎜En résumé, la conception de la structure de table MySQL d'un système complet de coupons de centre commercial doit inclure un tableau d'informations de base sur les coupons, un tableau d'association d'utilisateurs et de coupons et un tableau de scénarios applicables aux coupons. Dans le processus de développement actuel, la structure de la table peut être ajustée et étendue de manière appropriée en fonction des besoins réels. 🎜🎜J'espère que cet article vous aidera à concevoir la structure de la table de coupons du centre commercial dans MySQL. Si vous avez d'autres questions, n'hésitez pas à les poser. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!