簡體   English   中英

需要從主表獲取訂單的MySQL查詢,然后是與之關聯的單個項目以及另一個表的總行數的計數

[英]Need MySQL query that gets orders from main table, then a count of individual items associated with it as well as total rows from another table

我確實需要一個MySQL查詢,該查詢從主表獲取訂單,然后從中獲取與之關聯的單個項目以及從另一個表獲取的總行數。

所以我有以下結構:

db.Orders
id | order_number | date_worked

1 | 1234 | 2014-09-17
2 | 1235 | 2014-09-17
3 | 1236 | 2014-09-17
4 | 1237 | 2014-09-17


db.OrdersItems
id | order_number_id | item_id

1 | 1234 | widget1
2 | 1234 | widget1
3 | 1234 | widget2
4 | 1234 | widget2
5 | 1234 | widget2
6 | 1235 | widget4
7 | 1235 | widget4
8 | 1236 | widget4
9 | 1236 | widget1
10| 1237 | widget1

一個訂單可以有多個SKU,每個訂單每個SKU可以有多行。 因此,我正在尋找但無法弄清楚的是如何獲得以下信息:

order_number | 來自db.OrdersItems中的order_number_id的單個skus的計數| order_number_id的總行數

恩。

1234 | 2 skus | 5 lines
1235 | 1 skus | 2 lines
1236 | 2 skus | 2 lines
1237 | 1 skus | 1 lines

我相信您會( SQL Fiddle ):

SELECT o.order_number, COUNT(DISTINCT i.item_id) AS SkuCnt, COUNT(*) AS LineCnt
FROM Orders o
INNER JOIN OrdersItems i ON o.order_number = i.order_number_id
GROUP BY o.order_number

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM