簡體   English   中英

MySQL查詢與另一個表的計數

[英]Mysql query with count on another table

我有兩個表,其中一個包含交易信息,例如ID,狀態,價格和日期。 我還有另一個表,該表按該順序將項目數存儲為單獨的行。 因此,假設交易2有10個項目,第二個表中的不同項目將有10行。 我想做的是運行一個查詢,該查詢列出了交易以及該交易中售出的商品數量。 我想這需要在第二張桌子上數一數,但是我不確定如何做到這一點。 這是數據庫的基本布局

transaction id, date, price, discount, status
items: id, transaction_id, item_name, email, date_ordered, hash

在此先感謝您提供的所有幫助。

按要選擇的transaction表中的列分組。 然后添加項目數

select t.id, count(i.id) as item_count
from transaction t
left join items i on i.transaction_id = t.id
group by t.id

您可以在兩個表上進行left join ,如下所示

select t.*, tab.total_order
from transaction t
left join
(
select transaction_id, count(*) as total_order
from items
group by transaction_id
) tab on t.id = tab.transaction_id

暫無
暫無

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

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