gpt4 book ai didi

sql - PostgreSQL 条件枚举

转载 作者:行者123 更新时间:2023-11-29 12:40:34 38 4
gpt4 key购买 nike

假设我有一个表 inventory,其中包含 item_idcategorysize 列。

  1. item_id 是自增整数(主键)
  2. category 是 ENUM
  3. size 是 ENUM

我希望 size 成为一个条件枚举。对于“条件”,这意味着对于 category=shoessize 的值为 5、6、7、8、35、36、37、38 等,而对于 category=tshirtsize 的值为 S、M、L 等。

对于具有category=shoes 的项目,其size 不应被允许为S。

解决这个问题的正确方法是什么?

最佳答案

您可以通过复杂的检查约束来实现这一点,例如:

ALTER TABLE inventory ADD CONSTRAINT inventory_size_check
CHECK((category = 'shoes' AND size BETWEEN '5' AND '45') OR
(category = 'tshirt' AND size BETWEEN 'S' AND 'XXL'));

枚举 size 必须包含所有类别的所有尺寸。

关于sql - PostgreSQL 条件枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52620338/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com