Sql 如何计算贷款数量?为什么不是';这不管用吗?

Sql 如何计算贷款数量?为什么不是';这不管用吗?,sql,sqlite,Sql,Sqlite,我在操场工作,类似于SQLite 有两个表:loans\u west和loans\u east 它们都有以下列:id,book\u id,customer\u id,loaned\u on,return\u by和returned\u on 我尝试的查询是生成一个报告,列出未归还贷款的客户的名字、电子邮件和贷款计数 到目前为止我有 SELECT first_name, email, Count(1) as [Count] From ( SELECT book_id FROM loans_west

我在操场工作,类似于SQLite

有两个表:
loans\u west
loans\u east

它们都有以下列:
id
book\u id
customer\u id
loaned\u on
return\u by
returned\u on

我尝试的查询是生成一个报告,列出未归还贷款的客户的名字、电子邮件和贷款计数

到目前为止我有

SELECT first_name, email, Count(1) as [Count]
From
(
SELECT book_id FROM loans_west bn WHERE return_by IS NULL
union all
SELECT book_id FROM loans_east bs WHERE return_by IS NULL
)
GROUP BY patron_id
但这些都不起作用。
我该怎么做?谢谢

您的内部查询必须包含您在外部查询中引用的所有列,否则它将抛出错误“未找到列”

SELECT patron_id, email, Count(1) as [Count]
From
(
SELECT patron_id, email FROM loans_west bn WHERE return_by IS NULL
union all
SELECT patron_id, email FROM loans_east bs WHERE return_by IS NULL
)
GROUP BY patron_id,email
正如您在问题中提到的,表的列列表中没有第一个列的名称。假设有一个用户id和名字的映射表,该表包含人员的更多详细信息
你可以使用连接来获得名字。<代码>标题> <代码>来自何处?嗯,错误信息是什么?错误:没有这样的列:FrestTyNAMEWELL,您只有那些<代码> ID、BooGuid ID、PoRosiid、LoeDeDon、ReTrutyBy和ReTurndgon < /Cord>。在您的手上,应该考虑没有两个表用于贷款,而改为“东”。和“西部”区别在同一贷款表中的一列。