[英]Select certain columns from one table and a count from another table in MySQL
我已經檢查了類似問題的一些答案,但仍然不能完全正確。
我有兩個表, Stock-Details
和Goods-In
。 兩個表都有一個ID主鍵。 與它們匹配的列值是PrimarySKU
(在Stock-Details
和SKU
(在Goods-In
)。
所以,我的第一個查詢可能是:
"SELECT `id`,`Nominal`,`OnOrder`,`PrimarySKU` FROM `Stock-Details`
WHERE 'Nominal` < '10'"
我的第二個問題是:
"SELECT COUNT FROM `Goods-In`
WHERE `UsedByOrderNumber`=''
AND `SKU`= `PrimarySKU` (From My First Table.)"
如何將這些組合成一個快速查詢,它將為我提供Stock-Details
所有列以及Goods-In
中UsedByOrderNumber
為空或使用的行數或其他?
您可以通過獲取SKU的計數來實現此目的,其中UsedByOrderNumber在子查詢中為空,然后將其連接到您的Stock-Details表:
SELECT
t1.id,
t1.nominal,
t1.onorder,
t1.primarySku
t2.recordcount
FROM
stock-details t1
LEFT OUTER JOIN
(
SELECT
SKU,
count(*) as recordcount
FROM Goods-In
WHERE UsedByOrderNumber IS NULL
GROUP BY SKU
) t2 ON
t1.primarySku = t2.SKU
WHERE
t1.Nominal < 10
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.