SQL如何将多个表中的数据插入到一个表中并使用不同的colomns?
问题描述:
我工作的一所学校的项目,我有如下表:SQL如何将多个表中的数据插入到一个表中并使用不同的colomns?
表1
projectcode
项目名称
表2
paymentcode
描述
表3
projectcode
paymentcode
价格
日期
现在我已经取得了与输入的形式:项目名称,详细描述价格和日期。此外,项目名称和描述是与数据库链接的下拉菜单,并包含现有数据。现在我想知道的是,我如何填写表4与这四个输入。当然价格和日期很容易,因为那只是一个INSERT问题,但我的问题是:我怎样才能通过只选择项目名称插入在table3中的项目代码?它与描述相同。
例如:我从我的表单中的projectname下拉菜单中选择projectname1并点击提交。然后看看table3我应该看到projectname1的projectcode。 长话短说: 即时通讯寻找一种方式来建立两个列之间的关系,在这种情况下projectname和projectcode。
我希望任何人都可以帮助我。提前致谢。
答
我不明白你。
在下拉列表中,应该有一个键值对,其中key = Id(ProjectCode),value = Name(ProjectName)。
您的查询应如下:
INSERT INTO Table3 (ProjectCode, PaymentCode, Price, Date)
(
SELECT ProjectCode, NULL, @PriceFromYourInput, @DateFromYourInput
FROM Table1 WHERE ProjectName = @ProjectNameFromYourDropdown
)
你有Table 1和表2之间的映射?
否则,您需要为某个项目X(Table1.ProjectCode)指定它需要多少成本(Table2.PaymentCode)。如果你想把表3中的映射,你也必须从下拉列表中输入PaymentCode。
您的查询应如下:
INSERT INTO Table3 (ProjectCode, PaymentCode, Price, Date)<br />
(
SELECT ProjectCode, PaymentCode, @PriceFromYourInput, @DateFromYourInput
FROM
Table1 WHERE ProjectName = @ProjectNameFromYourDropdown
OUTER JOIN
Table2 WHERE Description = @PaymentNameFromYourDropdown
)