【发布时间】:2016-02-17 03:12:07
【问题描述】:
我正在尝试一个我什至无法理解的 Oracle SQL 家庭作业...有人可以帮帮我吗?我在 SQL 方面不是一个完全的菜鸟,但这似乎太复杂了,我无法理解。
提示是: 编写一个 SELECT 语句,为每个包含三列的总帐帐号返回一行: General_Ledger_accounts 表中的 account_description 列 Invoice_Line_Items 表中具有相同 account_number 的条目的计数 Invoice_Line_Items 表中具有相同 account_number 的行项目金额的总和 过滤结果集以仅包含计数大于 1 的那些行;按帐户描述对结果集进行分组(我假设它们的意思是 Account_Description);并按订单项金额之和对结果集进行降序排序。
表格详情:
SQL> desc general_ledger_accounts
Name Null? Type
----------------------------------------- -------- ----------------------------
ACCOUNT_NUMBER NOT NULL NUMBER
ACCOUNT_DESCRIPTION NOT NULL VARCHAR2(50)
【问题讨论】:
-
您能告诉我们您尝试的查询无效吗?
-
其实我还没有开始,因为我不知道从哪里开始。我确实问过提供这个的同学,但它在 count(distinct invoice_line_items.account_number) 列中返回值 61482。 select general_ledger_accounts.account_description, count(DISTINCT invoice_line_items.account_number), sum(invoice_line_items.account_number) from general_ledger_accounts, invoice_line_items group by general_ledger_accounts.account_description HAVING count(DISTINCT invoice_line_items.account_number) > 1 order by count(DISTINCT invoice_line_items.account_number) desc;