【发布时间】:2014-03-19 00:16:00
【问题描述】:
我有两个 oracle 表,表 1 包含学生信息,第二个表包含学生交易详细信息。现在我想要一个 sql 查询来显示每个学生的交易详情报告。例如学生证、姓名、金额、交易日期等。 注意,一个学生可以有很多交易,所以我想要这样一种情况,如果 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)
【问题讨论】:
-
发布表定义,发布样本数据,发布预期结果。
-
我认为,您可以使用 SELECT 语句来做到这一点,但是如果没有任何表信息,这有点困难。您基本上是要求从头开始为您做这件事?
-
不,这是我编写的脚本,但查询没有求和,并且不断重复学生 ID 和重复事务。
-
在这里查看脚本: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 来自 SPRIDEN s, TBRACCD t 其中 s.spriden_pidm = t.tbraccd_pidm 和 t.tbraccd_term_code = 201320 和 t.tbraccd_desc = 'Misc Book Store Charges';
-
第一个表是SPRIDEN,第二个表是TBRACCD
标签: oracle