select列表中出现的列(聚合函数如max(),min(),sum(),avg()除外),必须出现在group by语句之后
另,你的逻辑应有点混乱,试试下面的SELECT t3.xzqdm,
t.c_zqcode
FROM gdlyjc.fl_sys_lqzqzd t,
LBMS_LQJFJL t2,
(SELECT SUBSTR(t3.SQBBH,0,9) AS xzqdm, sllmldzkdjb_bh FROM LBMS_SLLMLDZKDJB
) t3
WHERE t.c_zqcode =t3.xzqdm
AND t2.sllmldzkdjb_bh = t3.sllmldzkdjb_bh
GROUP BY t3.xzqdm,
t.c_zqcode
另,你的逻辑应有点混乱,试试下面的SELECT t3.xzqdm,
t.c_zqcode
FROM gdlyjc.fl_sys_lqzqzd t,
LBMS_LQJFJL t2,
(SELECT SUBSTR(t3.SQBBH,0,9) AS xzqdm, sllmldzkdjb_bh FROM LBMS_SLLMLDZKDJB
) t3
WHERE t.c_zqcode =t3.xzqdm
AND t2.sllmldzkdjb_bh = t3.sllmldzkdjb_bh
GROUP BY t3.xzqdm,
t.c_zqcode
1.你仅能够使用那些能通过表引用而得来的字段;
2.如果你有 GROUP BY 语句,你只能够使用 GROUP BY 语句后面的字段或者聚合函数;
3.当你的语句中没有 GROUP BY 的时候,可以使用开窗函数代替聚合函数;
4.当你的语句中没有 GROUP BY 的时候,你不能同时使用聚合函数和其它函数;
5.有一些方法可以将普通函数封装在聚合函数中;
6.……