ORA-00979: not a GROUP BY expression

本文介绍了一种SQL查询方法,用于获取公租房项目的详细信息,包括项目名称、位置、建筑规模、分配情况及住户类型等。通过内连接和左连接操作,实现了对项目进度、房屋分配状态以及不同收入群体入住情况的综合分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 SELECT 
proj.name,
proj.area,
proj.position,
proj.num AS houseCount, 
proj.buildingArea,
proj.planStartDate, 
CASE WHEN proj.rate = '100%' THEN TO_CHAR(proj.modifyTime, 'YYYY-MM-DD HH24:MI:SS') ELSE proj.planEndDate END AS builtTime,
CASE WHEN proj.rate = '100%' THEN '已竣工' ELSE '未竣工' END AS built,
'公租房' AS type,
count(h.ID) - count(t.houseID) AS unallotted,
min(t.addTime) allotTime, 
count(t.houseID) AS allotted, 
sum(t.JTRS) AS amount,
sum(CASE WHEN t.type = 1 THEN 1 ELSE 0 END) AS lowIncome,
sum(CASE WHEN t.type = 2 THEN 1 ELSE 0 END) AS newToWork, 
sum(CASE WHEN t.type = 3 THEN 1 ELSE 0 END) AS otherCity,
sum(CASE WHEN t.type = 4 THEN 1 ELSE 0 END) AS unitApply 
FROM projectplan proj 
INNER JOIN houses h ON h.projectId = proj.id 
LEFT JOIN (SELECT a.type, map.addTime, map.houseID, f.JTRS
FROM tenanthousemapping map, tenant t, accessapply a, familyinfo f 
WHERE t.ID = map.tenantID AND f.UserId = t.ID AND t.ApplyID = a.id AND map.status = 1) t 
ON t.houseID = h.ID 
GROUP BY proj.id;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值