嗨我目前正在編寫一些軟件來管理我們的股票。 我通過2臺MYSQL - 重複
master_stock搜索(存放每一個stockCode和說明) 股票(可容納stockCode,位置,數量...)
一切都很好,但是這是有我的問題IM。
只是說我的股票表中有2條記錄與stockCode爲「testcode」但兩者有不同的位置和quantitys
然後,我有我的master_stock與stockCode 1個實例及其說明
如果我搜索說「測試代碼」,然後生病得到3結果2來自股票這是好的,但我也會得到來自master_stock的一個我想擁有它,所以如果有至少一個結果股票,那麼我不' t想要顯示來自master_stock的行,但是如果在庫存中找不到任何內容,請顯示master_stock中的行。
所以發生了什麼是我返回的結果我並不需要看到這意味着它的速度較慢搜索,這將是令人困惑的員工在看,由於結果的量
SELECT ms.stockCode AS 'Stock Code',
ms.description AS 'Description',
st.quantity AS 'Quantity',
um.UnitMeasurementName AS 'Unit Measurement',
dep.departmentName AS 'Location',
st .rack AS 'Rack',
st.cost AS 'Cost Per Unit',
(st.cost * st.quantity) AS 'Total Cost',
sc.conditionDescription AS 'Condition'
FROM stock As st
INNER JOIN master_stock ms on ms.stockCode = st.stockCode
INNER JOIN racks r on r.rack= st.rack
INNER JOIN departments dep on dep.departmentId = r.departmentId
INNER JOIN unit_measurements um on um.unitMeasurementId = ms.unitMeasurementId
INNER JOIN stock_conditions sc on sc.conditionId = st.stockCondition
WHERE ms.stockCode LIKE '%testcode%'
Union DISTINCT
SELECT ms.stockCode AS 'Stock Code',
ms.description AS 'Description',
'0',
'NO MEASUREMENT',
'NO LOCATION',
'NO RACK',
'0',
'0',
'NO CONDITION'
FROM master_stock As ms
WHERE ms.stockCode LIKE '%testcode%';
非常感謝你,這工作得很完美,正是我想讓它工作的原因!不能相信它是如此簡單! – Ashley