php - SQL 如何将多个表中的数据插入和选择到单个表中并使用不同的列?

标签 php mysql sql-server

我正在开展一个学校项目,我有下表:

表1

项目代码

项目名称

表2

付款码

描述

表3

项目代码

付款码

价格

日期

现在我已经制作了一个包含输入的表单:项目名称、描述价格和日期。此外,项目名称和描述是与数据库链接的下拉菜单,并包含现有数据。现在我想知道的是如何用这四个输入填充表 3。当然价格和日期很容易,因为这只是 INSERT 的问题,但我的问题是:如何通过仅选择项目名称来将项目代码插入到 table3 中?描述相同。

示例:我从表单中的项目名称下拉菜单中选择项目名称1,然后单击“提交”。然后查看表 3,我应该看到项目名称 1 的项目代码。 长话短说: 我正在寻找一种方法在本例中的项目名称和项目代码中的两列之间建立某种关系。

我希望任何人都可以帮助我。提前致谢。

最佳答案

我不明白你的意思。
在下拉列表中,应该有一个键值对,其中 key = Id (ProjectCode),value = Name (ProjectName)。

您的查询应如下所示:

INSERT INTO Table3 (ProjectCode, PaymentCode, Price, Date)
(
    SELECT ProjectCode, NULL, @PriceFromYourInput, @DateFromYourInput
    FROM Table1 WHERE ProjectName = @ProjectNameFromYourDropdown
)


您有 Table1 和 Table2 之间的映射吗?
否则,您需要指定某个项目 X (Table1.ProjectCode) 的成本是多少 (Table2.PaymentCode)。如果您想将映射放在Table3中,您还必须从下拉列表中输入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
)



关于php - SQL 如何将多个表中的数据插入和选择到单个表中并使用不同的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26727023/

相关文章:

php - 使用包含两个元素的关联数组在多维数组中搜索唯一行

php - Drupal 7 中的自定义分类术语页面

sql - MySQL:通过 auto_increment 列的值检查新记录是否不好?

sql-server - 是否可以使用名称获取存储过程的定义(无需查看对象资源管理器)

sql - 对于 Nvarchar(Max),我在 SQL 中只能获取 4000 个字符?

javascript - Phonegap 在手机上的 PHP 脚本的第一个字符上立即抛出 "Network Error"- 在 Chrome/Dreamweaver 中工作正常

javascript - 执行mysql查询后刷新图表(javascript)

mysql - 使用还是不使用 ENUM/SET 类型?

mysql - 如何改进我的自然语言搜索查询

mysql - 使用 select 语句更新动态列值