我有一个RFID系统,可以记录进出的标签。 将每个标签记录在一个表中(事务)。标题表(transaction_headers)具有有关库存进出的信息。我将使用前8个字符作为前缀来标识广告资源。然后,我想计算出入的情况。将要添加的内容添加到库存中,然后减去要输出的内容。
我已经开始使用此SQL来计算出入的内容。我将如何使用它来获取总库存?以及如何存储这些数据。
SELECT Left(encoded_value,8) AS Itemnumber
,Count(transactions.encoded_value) AS CountOfencoded_value
,transaction_headers.loc_id AS Gate
,CASE WHEN transaction_headers.loc_id = 1
THEN Count(transactions.encoded_value) * -1
ELSE Count(transactions.encoded_value)
END AS Inventory
FROM transactions
INNER JOIN transaction_headers ON transactions.id = transaction_headers.id
GROUP BY Left(encoded_value,8), transaction_headers.loc_id
HAVING (((Left(encoded_value,8)) Like 'CCE1%') AND ((transaction_headers.loc_id) Is Not Null));
交易记录表
id transaction_header_id encoded_value
107039 6294 CCE1C0360000000017120ACA
107038 6294 CCE1C0360000000017120A8F
107037 6294 CCE1C0360000000017120418
107036 6294 CCE1C0360000000017120B5F
107035 6294 CCE1C0360000000018030802
107034 6294 CCE1E5000000000018090041
107033 6294 CCE1C0360000000018061053
106980 6295 CCE1C0360000000017120A8D
106979 6295 CCE1C0360000000018060670
106978 6295 CCE1C0360000000018060996
106977 6295 CCE1E5000000000018080331
标题表
id loc_id
6295 1
6294 2
所需的结果类似
院子里的存货是:
ItemNumber count
CCE1C036 3
CCE1E500 0
我们一天将完成数千笔交易,并提供约50个库存代码