我正在使用游乐场,类似于SQLite
有两个表格:loans_east
和id
两者都有以下列:book_id
,patron_id
,loaned_on
,return_by
,returned_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
我正在尝试的查询是生成一份报告,其中列出了尚未归还的贷款的赞助人的名字,电子邮件和贷款计数。
到目前为止我已经
了{{1}}
这些都不起作用。 我该怎么做呢?谢谢
答案 0 :(得分:1)
您的内部查询必须包含您在外部查询中引用的所有列,否则将抛出未找到的错误列。
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
如您的问题中所述,表的列列表没有first_name作为列。假设有一个patron_id和first_name的映射表,该表包含人员的更多详细信息 你可以用JOIN来获得名字。