SQL虚拟表
我已将我的数据库设置为: 我拥有的每个产品都有自己的表,其中记录了销售数量/交易#(因此第1列是“交易ID”,第2列是“数量”) ex)p-反斜杠(其中p-表示“产品”) 也有每年的表格,其中保存了每一笔交易的记录。每个表都包含以下列:“transactionID”、“date”、“time”、“pt_CA”、“pt_DB”、“pt_VC”、“pt_MC”、“pt_CH”、“pt_AM” ex)sales-2008、sales-2009等 我希望能够引用一个表,该表保存每年的所有记录,而无需更改该表的sql以包含新的一年 例如,我想查询“p-backScratcher”的所有事务,我不想输入SQL虚拟表,sql,ms-access,ms-access-2003,Sql,Ms Access,Ms Access 2003,我已将我的数据库设置为: 我拥有的每个产品都有自己的表,其中记录了销售数量/交易#(因此第1列是“交易ID”,第2列是“数量”) ex)p-反斜杠(其中p-表示“产品”) 也有每年的表格,其中保存了每一笔交易的记录。每个表都包含以下列:“transactionID”、“date”、“time”、“pt_CA”、“pt_DB”、“pt_VC”、“pt_MC”、“pt_CH”、“pt_AM” ex)sales-2008、sales-2009等 我希望能够引用一个表,该表保存每年的所有记录,而无需更改
SELECT sales-2008.date, sales-2009.date
FROM sales-2008, sales-2009
WHERE sales-2008.transactionID = p-backScratcher.transactionID
OR sales-2009.transactionID = p-backScratcher.transactionID
……而是:
SELECT sales.date
FROM sales
WHERE sales.transactionID = p-backScratcher.transactionID
您所寻找的是一个“视图”,它实际上是一个存储语句,是一个格式正确的结果列表。您可以像查询表一样直接查询它。您要查找的是一个“视图”,它几乎是一个存储语句,是一个格式正确的结果列表。您可以像查询表一样直接查询它。在SQL中,正如Kyle的回答所述,您可以创建一个视图,这是一种虚拟表,但我强烈建议您在提交数据库结构之前,先获得一本书或谷歌的关系数据库设计 在SQL中,正如Kyle的回答所述,您可以创建一个视图,这是一种虚拟表,但我强烈建议您在致力于数据库结构之前,先获得一本书或谷歌的关系数据库设计 我希望能够引用一个表,该表保存每年的所有记录,而无需更改该表的sql以包含新的一年 这就是为什么您不应该为每个产品使用一个表,每年使用一个表 您需要的是一个“产品”表和一个“交易”表 我希望能够引用一个表,该表保存每年的所有记录,而无需更改该表的sql以包含新的一年 这就是为什么您不应该为每个产品使用一个表,每年使用一个表
您需要的是一个“产品”表和一个“事务”表。不确定这个项目有多大,或者您的具体需求是什么(例如,如果您有与之相关联的代码),但您可能需要考虑将数据迁移到MS SQL(或MySQL等)。SQL Server有一个免费的桌面版,但只支持有限的功能集(其中包括视图) MySQL、PostGre等支持您正在寻找的功能,包括PostGre中的继承表(不完全是您需要的,但类似)
我已经有一段时间没有使用Access了,我不确定它是否支持您正在寻找的功能。不确定这个项目有多大,或者您的具体要求是什么(例如,如果您有与之相关联的代码),但您可能想考虑将数据迁移到MS SQL(或MySQL等)。SQL Server有一个免费的桌面版,但只支持有限的功能集(其中包括视图) MySQL、PostGre等支持您正在寻找的功能,包括PostGre中的继承表(不完全是您需要的,但类似)
我已经有一段时间没有使用Access了,我不确定它是否支持您正在寻找的功能。这种设计似乎很难使用。是否有理由选择这种设计而不是其他更容易使用的设计?我的第一个想法是将所有内容都包含在一张表中;任何超过“pt_AM”列的内容都是产品的数量。基本上,每当我做这样的事情时,我最终都会用完(从长远来看)专栏。每个产品都有一个表可以保证a)我不会有任何表包含过多的空条目,b)通过按年度划分销售额,查找时间会更短;考虑到报告通常是每月或某一年生成的(尽管由于发布的问题,我可能只会将所有事务信息合并到一个表中),这种设计似乎很难使用。是否有理由选择这种设计而不是其他更容易使用的设计?我的第一个想法是将所有内容都包含在一张表中;任何超过“pt_AM”列的内容都是产品的数量。基本上,每当我做这样的事情时,我最终都会用完(从长远来看)专栏。每个产品都有一个表可以保证a)我不会有任何表包含过多的空条目,b)通过按年度划分销售额,查找时间会更短;考虑到报告通常是每月或某一年生成的(尽管由于发布的问题,我可能只是将所有事务信息合并到一个表中)。这是个糟糕的设计,没错。这是一个糟糕的设计。为什么你认为“Access”不支持正确的表设计?实际上我说我不确定它是否支持他正在寻找的功能。我没有说不会。为什么你认为“Access”不支持正确的表设计?我实际上说我不确定它是否支持他正在寻找的功能。我没说不会。