如何创建一个对两个属性求和的派生属性?

busg9geu  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(256)

我正在努力创造一个 totalCost 列的总和 costA 以及 costB 每行。

CREATE TABLE Cost (
  customerId      INTEGER NOT NULL,
  costA           FLOAT(4) NOT NULL,
  costB           FLOAT(4) NOT NULL,
  totalCost       FLOAT(4) GENERATED ALWAYS AS (costA + costB) STORED,
  PRIMARY KEY (customerId)
);

有人能告诉我我错过了什么吗?我本以为这会非常简单!
注意-尝试在ddl而不是查询中构建它。
谢谢!:)

ni65a41a

ni65a41a1#

结尾有个逗号。sql不允许这样。

CREATE TABLE Cost (
  customerId      INTEGER NOT NULL,
  costA           FLOAT(4) NOT NULL,
  costB           FLOAT(4) NOT NULL,
  totalCost       FLOAT(4) GENERATED ALWAYS AS (costA + costB) STORED,
  PRIMARY KEY (customerId),
                          ^ remove this
);

注:自 float(4) 如果不精确,请考虑使用精确的 numeric 键入以存储货币。

相关问题