我使用称为交易和销售的表格,其中交易包含帐号,脚本名称,交易类型(交易)和权数;和sales表包含scriptname,account number,shares_bought和shares_sold。 如果交易类型为卖出,则shares_bought = Quantity else Shares_sold = Quantity。我写的SQL命令不起作用,请告诉更正。
SELECT t.scriptname, s.accnum, s.shares_bought, s.shares_sold
FROM sales AS s INNER JOIN transac AS t ON s.accnum = t.accnum
SELECT CASE WHEN t.transactio = 'buy' THEN s.shares_bought=t.Quantity
ELSE s.shares_sold=t.Quantity
END
例如我在事务表中有scriptname =" abcd" accnum =" 1"交易="购买"和数量=" 20" 在销售表中我应该得到scriptname =" abcd" accnum =" 1" shares_bought =" 20"和股票卖空了
答案 0 :(得分:0)
如果我理解正确,你应该用和/或
替换第二个选择SELECT t.scriptname, s.accnum, s.shares_bought, s.shares_sold
FROM sales s INNER JOIN transac t ON s.accnum = t.accnum
and CASE WHEN t.transactio = 'sell' THEN s.shares_sold=t.Quantity
ELSE s.shares_sold=t.Quantity
END