2017-04-25 42 views
0

我建立使用MySQL一個電子商務網站產品的最佳途徑。我堅持以下。什麼是展示基於兩個指標分析(MYSQL +模式+數學)

我有

**products** table: 
    id | sku 

**stocks** table: 
id | product_id |quantity 

**orders** table: 
id | status  | products 

我想知道,使SQL查詢,使我有1個或更多數量的產品的最佳方式。爲了獲得產品的數量:第一,你從產品獲得ID,然後您檢查量(一個的product_id可以有超過1行,我想添加一個新行,每次我們的商店收到的新股票),並減去上訂單表的總次數看來,PRODUCT_ID和該行的狀態是3

或者,如果你可以建議我一個更好的方式來做到這一點,那將是真棒。

真的在這裏得到任何幫助。 謝謝!

回答

0

此連接產品,以股票和得到的產品列表,其中在數量值大於或等於一個

剛剛意識到你所說的產品ID可以是股票不止一次因此,我建議由產品ID和總結分組數量

SELECT *, SUM(s.quantity) as 'products_total_quantity' FROM products p 
INNER JOIN stocks s on s.product_id = p.id 
GROUP BY p.id HAVING SUM(s.quantity) >=1 
+0

SUM()會自動減去負值條目,所以我的答案仍然適用於您的規格 –

+0

謝謝您的回覆!如果你有一個以便與狀態3,如果orders.products領域的JSON包含相同product.id您還沒有從其減去。我怎麼能這樣做@ jason-joslin? –