【问题标题】:Stored procedure help for taking IDs and getting result from another table用于获取 ID 并从另一个表获取结果的存储过程帮助
【发布时间】:2016-11-01 20:23:48
【问题描述】:

在一个表 (store100) 中,我有一个 storeID 的列表,它们每天的销售额超过 100。在另一张桌子上,我有销售。现在我想做的是对于表 store100 中的每个 StoreID 我想看看他们在 sales 表中销售了多少产品 x。我如何实现这一目标?显然我不想一直手动输入 storeID,所以我希望它获取表中的所有 ID 并比较 sales 表中 x 的销售额。

表结构:

store100 table:
ID
    lon1
    lon2
    glas4
    edi5
etc 

Sales Table:
ID  |Location|Product|Quantity|Total Price
lon1 London   Wallet   5           50
edi5  Manc    Shoes    4           100

例如,我想要一个查询,它包含所有 store100 ID 并显示他们卖出了多少钱包。

如果有人有更好的实现方法请告诉我

【问题讨论】:

    标签: postgresql stored-procedures


    【解决方案1】:

    你需要加入这个

    SELECT S100.ID
          ,S.Product
          ,S.Quantity
    FROM Store100 S100
    INNER JOIN Sales S
    ON (S100.ID = S.ID)
    

    当然,如果需要,您仍然需要 where 子句并修改您的选择以满足您的需要。

    【讨论】:

    • 所以如果我想看看每家商店卖出了多少个钱包,如果我添加了where product='wallet' 子句,上述查询会起作用吗?它会向我显示 S100 表中的每个 ID?
    • 正确。您需要添加 S.Product = 'Wallet',因为我们在连接中为表设置了别名。长手是 Sales.Product = 'Wallet' 它只是更容易使用别名。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-03
    • 1970-01-01
    • 2013-06-25
    • 2018-03-04
    • 2011-11-15
    • 1970-01-01
    相关资源
    最近更新 更多