繁体   English   中英

需要有关Oracle查询的帮助

[英]Need help on oracle query

我有两个Oracle表,表1包含学生信息,第二个表包含学生交易详细信息。 现在,我想要一个sql查询来带出每个学生的交易详细信息的报告。 例如,学生ID,姓名,金额,交易日期等。请注意,一个学生可以进行很多交易,因此我希望出现这样一种情况:如果ID 1的学生购买了3件商品,那么在查询结果中我想查看学生ID 1并购买了3件物品。 我不希望学生证重复3次和购买的物品数量。

谢谢

编辑

这是我到目前为止的查询:

select 
    distinct(s.spriden_id), 
    s.spriden_last_name, 
    s.spriden_first_name, 
    t.tbraccd_detail_code, 
    t.sum(tbraccd_amount), 
    t.tbraccd_term_code,
    t.tbraccd_user, 
    t.TBRACCD_DATE 
from SPRIDEN s, TBRACCD t 
where s.spriden_pidm = t.tbraccd_pidm 
and t.tbraccd_term_code = 201320 
and t.tbraccd_desc = 'Misc Book Store Charges';

(第一个表是SPRIDEN,第二个表是TBRACCD)

您可以使用GROUP BY对学生进行分组,如下所示:

select 
    s.spriden_id, 
    sum(t.tbraccd_amount), 
from SPRIDEN s, TBRACCD t 
where s.spriden_pidm = t.tbraccd_pidm 
and t.tbraccd_term_code = 201320 
and t.tbraccd_desc = 'Misc Book Store Charges'
GROUP BY s.spriden_id;

修改版本以选择所有列:

select 
    s.spriden_id, 
    t.tbraccd_entry_date, 
    t.tbraccd_term_code, 
    t.tbraccd_user,
    sum(t.tbraccd_amount)
from SPRIDEN s, TBRACCD t 
where s.spriden_pidm = t.tbraccd_pidm 
and t.tbraccd_term_code = 201320 
and t.tbraccd_desc = 'Misc Book Store Charges'
GROUP BY 
    s.spriden_id,
    t.tbraccd_entry_date, 
    t.tbraccd_term_code, 
    t.tbraccd_user;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM