【发布时间】:2021-10-13 05:27:53
【问题描述】:
我想创建一个表,其中的列涉及除以其他两列,然后乘以第三列。 SQL Server 上的文档只有一个乘法示例(下面的示例):
CREATE TABLE dbo.Products
(
ProductID int IDENTITY (1,1) NOT NULL
, QtyAvailable smallint
, UnitPrice money
, InventoryValue AS QtyAvailable * UnitPrice
)
我想做同样的事情,但我之前提到的计算是这样的:
CREATE TABLE dbo.ExampleTable
(
ColumnOne INT
, ColumnTwo INT
, ColumnThree INT
, ColumnFour AS (ColumnOne / ColumnTwo) * ColumnThree
)
我还没有机会在 SQL Server 上实际试用它,但是当我刚刚在 WebSQL 上试用它时,它却没有用。错误信息说:
错误 1:无法准备语句(“QtyAvailable”附近的 1:语法错误)。
我尝试了类似 WebSQL 的更新语句
UPDATE ExampleTable
SET ColumnFour=(ColumnOne/ColumnTwo)*ColumnThree
但是 ColumnFour 的值为 0。尝试 CAST 并更改为十进制数据类型,但没有奏效。
【问题讨论】:
-
在 SQL Server 中运行良好。 “我还没有机会在 SQL Server 上实际试用它”——也许下次您应该在确认问题确实存在之后才发布问题?
-
WebSQL 已死 - 不要使用它。
标签: sql sql-server database create-table