我有兩個表名爲tbl_brands
和tbl_counter_stock
。 在tbl_brands
有品牌id和品牌名稱的鍵值對。 tbl_counter_stock
列與brnd_id
,2000ml
,1000ml
,stock
,stock_date
相似。 每一行代表像 O型開幕, R-收到 S-銷售, C-關閉 我想獲取記錄從這個表,如果關閉各品牌的庫存品牌與不同股票利口酒C(收盤股票)的條目不存在於此表中,那麼我想獲取該品牌的O(開盤股票)。如果關閉股票已經存在於該品牌中,我將獲得開盤和結算股票的價值。這對我來說不是理想的結果。我只想在C(收盤股票)不存在的情況下獲得O(開盤股票)。 在此先感謝。如果在表中不存在行時如何獲取另一行的值?
SELECT
A.brnd_id,A.brnd_name,'2000ml' capacity,COALESCE(B.`2000ml`,0) bottles,
B.stock,B.stock_date
FROM tbl_brands A
left OUTER JOIN
tbl_counter_stock AS B
on A.BRND_ID=B.BRND_ID
AND B.STOCK IN('O','C')
AND B.STOCK_DATE='2017-01-18'
這是一個很棒的解決方案,它爲我工作。我掙扎了很多,你救了我:)非常感謝你@iLikeMySql –
我很高興我能幫助你。我只注意到我在第二個where子句中忘記了STOCK_DATE併爲了完整性而對其進行了修正。 – iLikeMySql
非常感謝。我自己做了:) –