Re: [SQL ] Oracle DB 以PL-SQL查询合并字段

楼主: cutekid (可爱小孩子)   2017-12-15 18:19:53
with tb1 as(
select (ym || d) as date
from bill
group by (ym || d)
having count(distinct accno) > 1
)
select distinct t1.accno,t2.date
from bill t1
inner join tb1 t2 on (t1.ym || t1.d) = t2.date
order by t1.accno
※ 引述《UCboy (游戏boy)》之铭言:
: 数据库名称:Oracle - PL-SQL
: 内容/问题描述:
: 目前有类似下表的资料 想要结果如下
: accno ym d accno date
: 订单人编号   年月 日 订单人编号   日期
: a001 201712 15 a001 20171215
: a001 201712 15 a002 20171215
: a002 201712  15 a003 20171215
: a003 201712  15 a005 20171218
: a001 201712 16 a006 20171218
: a001 201712 16
: a004 201712 17
: a005 201712 18
: a005 201712 18
: a006 201712 18
: 想要的结果是列出一天中有"复数笔不同订单人下的订单"的纪录
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
: 目前语法想法是
: select disctinct(accno), (ym||d) as date
: from bill
: group by date
: order by accno
: having count(accno)>1;
: 但似乎合并出来的date无法直接做使用 吗?
: 还是有其他错误的地方呢?
: 只读过理论的完全数据库新手...QQ
: 再烦请高手们指点了 谢谢
作者: UCboy (游戏boy)   2017-12-18 09:35:00
太...太神了!!但我需要好好钻研一下这语法流程,感谢大大!!

Links booklink

Contact Us: admin [ a t ] ucptt.com