0
我被困在创建一个sql查询。选择查询中的显示列未按组添加子句
表:
XX_AR_RECEIPT_CREATE
列:
RECEIPT_ID
ENTITY
LOG_ID
ACTIVITY_ID
FIN_CLASS
RECEIPT_METHOD
RECEIPT_AMOUNT
RECEIPT_TYPE
RECEIPT_NUMBER
RECEIPT_DATE
POSTED_DATE
ACTIVITY_DATE
SERVICE_DATE
CASHIER_NAME
CASHIER_USERNAME
PAYMENT_REFERENCE_NUMBER
DEPARTMENT
SPECIALITY
ACCOUNT
STATUS
这是我的查询
select to_char(sum(to_number(receipt_amount))) amount,entity, cashier_name,
receipt_method, fin_class,to_char(to_date(posted_date, 'dd/mm/yy HH24:MI:SS'), 'dd/mm/yy') as receipt_date
from XX_AR_RECIPT_CREATE
where to_number(receipt_amount)>0 and status='0'
group by entity, cashier_name, receipt_method,
fin_class, to_char(to_date(posted_date,'dd/mm/yy HH24:MI:SS'), 'dd/mm/yy');
它的正常工作,问题是,我想添加一些额外的列例如LOG_ID 。但我不能在Group By子句中添加它。 EG:
select to_char(sum(to_number(receipt_amount))) amount, entity, cashier_name,
receipt_method, fin_class,to_char(to_date(posted_date, 'dd/mm/yy HH24:MI:SS'), 'dd/mm/yy') as receipt_date,
LOG_ID
from XX_AR_RECIPT_CREATE
where to_number(receipt_amount) > 0 and status = '0'
group by entity, cashier_name,
receipt_method, fin_class, to_char(to_date(posted_date, 'dd/mm/yy HH24:MI:SS'), 'dd/mm/yy');
我有搜索在互联网上也为解决方案。内连接是一个很好的解决方案。但问题是我使用to_char(),所以我不能添加别名。我正在使用Oracle数据库11g快速版版本11.2.0.2.0 - 64位生产
感谢@Gordon我只是忘了LISTAGG()。这将帮助我。 –