請看看下面的代碼錯誤結合2個SQL查詢一起
SELECT ongoing_portfolio.*,
Portfolio.Activation
FROM Ongoing_Portfolio
INNER JOIN Portfolio ON Ongoing_Portfolio.idPortfolio = Portfolio.idPortfolio
WHERE ongoing_portfolio.`idPortfolio`= 2 ORDER BY `Updated_Date` DESC LIMIT 4
SELECT SUM(`Transaction_Amount`) AS `Total`
FROM `transactions`
WHERE `idPortfolio`= 2 AND `Transaction_TimeStamp` <= "2016-12-17"
其實我試圖在這裏做的就是這個。
- 獲取所有投資組合的財務詳情(第一個查詢)。
- 獲取第一個查詢引用的特定投資組合的提及日期的總交易爲
Updated_Date
。 (第二個查詢)
現在,我真的需要在一個查詢中這樣做,所以我在下面嘗試。
SELECT ongoing_portfolio.*,
Portfolio.Activation,
SUM(Transactions.`Transaction_Amount`) AS `Total` WHERE `Transaction_TimeStamp` <= ongoing_portfolio.`Updated_Date`
FROM Ongoing_Portfolio
INNER JOIN Portfolio ON Ongoing_Portfolio.idPortfolio = Portfolio.idPortfolio
INNER JOIN Transactions ON Transactions.`idPortfolio` = Ongoing_Portfolio.idPortfolio
WHERE ongoing_portfolio.`idPortfolio`= 2 ORDER BY `Updated_Date` DESC LIMIT 4
然而,因爲它說
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE `Transaction_TimeStamp` <= ongoing_portfolio.`Updated_Date`
FROM Ongoing_' at line 3
我怎樣才能使這個查詢成功後,該生成錯誤?
舉動'和'Transaction_TimeStamp' <=「2016年12月17日」'爲其中的條件,然後通過訂單之前添加一個'組by',不知道分組部,因爲你沒有指定有關在哪個列分組要做,並總結爲剛剛總和(Transactions.Transaction_Amount) – 2014-12-19 09:35:30