【问题标题】:Get info from two tables从两个表中获取信息
【发布时间】:2019-07-17 00:03:31
【问题描述】:

您好,我正在使用 JS、PHP 和 Mysql 进行一个项目。我有 2 张桌子:

invoice (inv_id,date,total,paid,due)

invoice_infos (id, product_name,product_price,inv_id)

invoice_infos 包含有关发票的所有产品的信息。

invoice 表的date 列包含发票日期,invoice_detailsproduct_name 列包含产品名称。

我想做一个查询,让我查看在指定日期销售的产品。

【问题讨论】:

  • 更新您的问题添加适当的数据样本和预期结果
  • 通常,子表将被称为发票“行项目”,而不是“_infos”

标签: php mysql sql phpquery


【解决方案1】:

您似乎在两个表之间寻找一个简单的JOIN,使用字段inv_id。您查询的 FROM 子句应如下所示:

FROM invoices iv
INNER JOIN invoice_infos if ON if.inv_id = id.inv_id

从那里开始,假设您想提取特定销售日期invoice_infosinvoices 中的所有可用信息:

SELECT iv.*, if.*
FROM invoices iv
INNER JOIN invoice_infos if ON if.inv_id = id.inv_id
WHERE iv.date = ?

另一个典型的用例是聚合日期。例如,让我们计算在给定日期售出的每种产品的总价格:

SELECT if.product_name, SUM(if.product_price) sum_product_price
FROM invoices iv
INNER JOIN invoice_infos if ON if.inv_id = id.inv_id
WHERE iv.date = ?
GROUP BY if.product_name

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    相关资源
    最近更新 更多