繁体   English   中英

SQL Oracle查询以查找收据

[英]SQL Oracle query to find receipts

我有一张桌子叫PURCAHSE

它包含

PurchaseNo
ReceiptNo
ServiceType
PaymentType
GST
Amount
ServedBy
ClientNo

每个收据都来自一本由收据编号的第一个数字标识的书,例如444555来自书本编号444

我想查找购买次数,但前提是同一笔收据簿中至少有10笔其他购买。

我了解我将必须使用COUNT个汇总。 我认为我需要去的方式是,对于购买中的每个购买P,我都需要遍历所有其他购买,并找到与P的ReceiptNo相同的3位数字的购买。

我怎样才能做到这一点? 我不确定语法

预期输出应为

预期的输出将是一个整数,表示收据编号的前3位数字相同的购买次数

如果您需要更多详细信息,请发表评论

谢谢

尝试:

select trunc(ReceiptNo/1000) BookNumber, count(distinct PurchaseNo) NumPurchases
from PURCHASE
group by trunc(ReceiptNo/1000)
having count(distinct PurchaseNo) >= 10
order by 1

如果你是学生INFS2200,你不能使用group by加上having对task4.1。 如果这样做,您将看到task4.2中未使用的索引。 不使用group by子句尝试它,而是使用子查询。

暂无
暂无

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

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