我有这个 MYSQL SP,它对不同的表进行求和,但我希望 SP 返回一个表一行中的所有结果,我尝试使用 + 组合来自选择的结果,但出现错误
DROP PROCEDURE IF EXISTS x.GetFinanceContent;
delimiter //
CREATE PROCEDURE x.GetFinanceContent
(
IN userId INT
)
BEGIN
(SELECT SUM(AMOUNT) AS creditTotal
FROM x.Card1
WHERE user_Id = userId and card_type=1)
+
(SELECT SUM(AMOUNT) AS debitTotal
FROM x.Card2
WHERE user_Id = userId and card_type=2)
END;//
Error Code: 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 '+ (SELECT SUM(AMOUNT) AS debitTotal FROM x.Card WHERE user_Id ' at line 10 0.000 sec
最佳答案
SELECT
( SELECT SUM(AMOUNT) AS creditTotal
FROM x.Card1
WHERE user_Id = userId AND card_type=1
)
, ( SELECT SUM(AMOUNT) AS debitTotal
FROM x.Card2
WHERE user_Id = userId AND card_type=2
)
关于c# - 组合来自不同表的多个 Select 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6562113/