如何在 SQL 中向 Access 表添加计算列?
我知道我可以使用 SQL 添加一列,如下所示:
ALTER TABLE Clients ADD COLUMN AccountDate TEXT(60)
谢谢,
维托尔
您无法使用 SQL 添加计算列,因为计算字段需要表达式,而该表达式无法通过 SQL 提供。从技术上讲,计算字段是一种基本类型 - int、double、text 等。基本类型之上是一个表达式,可帮助 Access 执行数学/逻辑。
您可以使用 VBA 创建计算列
-- create a module and let's assume that
-- your table has Field1 integer and Field2 integer
-- we will add field3
Public Sub CreateField()
Dim DB As DAO.Database
Dim TableDef As DAO.TableDef
Dim Fld As DAO.Field2
Set DB = CurrentDb()
Set TableDef = DB.TableDefs("Table1")
Set Fld = TableDef.CreateField("field3", dbDouble)
Fld.Expression = "[field1] * [field2]"
TableDef.Fields.Append Fld
MsgBox "Added"
End Sub
正如 Gordon 和 BJones 提到的,您可以创建具有相关计算的视图或保存的查询。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)