gpt4 book ai didi

sql - 有关联子查询的麻烦,内部查询找不到列

转载 作者:行者123 更新时间:2023-12-03 17:41:06 24 4
gpt4 key购买 nike

我一直在因SQL麻烦而苦苦挣扎,我正在使用SQLite数据库,但遗憾的是无法使以下各项正常工作。感谢所有帮助。

我希望以下查询求和符合条件的transactionTable的value列中的所有整数。条件之一是外部查询中的每一行更改,因此我希望内部查询为外部查询中的每一行运行一次。

运行此查询时出现以下错误:“无此列:ct.name”
我在下面的查询中加粗了我认为错误的行。

表1:类别表

columns: id, icon, name, starred


表2:transactionTable

columns: id, date, amount, sign, category


查询:

SELECT id, icon, name, starred, mySum 
FROM categoryTable ct,
(SELECT sum(amount) AS mySum FROM transactionTable
WHERE date<'1992' AND date>'1990'
AND sign = '-' AND category=ct.name) AS sumTable
WHERE mySum!=0
ORDER BY mySum DESC


谢谢!

最佳答案

我认为可以在没有子查询的情况下完成此操作。试试这个版本。

SELECT ct.id, ct.icon, ct.name, ct.starred, SUM(tt.amount) AS transactionSum 
FROM categoryTable ct
INNER JOIN transactionTable tt
ON ct.name = tt.category
AND tt.date < '1992'
AND tt.date > '1990'
AND tt.sign = '-'
GROUP BY ct.id, ct.icon, ct.name, ct.starred
HAVING SUM(tt.amount) != 0
ORDER BY transactionSum DESC

关于sql - 有关联子查询的麻烦,内部查询找不到列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5554825/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com