我对SQL非常陌生,无法解决。
我要尝试选择的ACCOUNT_ID,CUST_ID,PRODUCT_CD,OPEN_BRANCH_ID的可用余额低于平均可用余额。
SELECT ACCOUNT_ID, CUST_ID, PRODUCT_CD, OPEN_BRANCH_ID
FROM Banking.Account
HAVING AVAIL_BALANCE < AVG(AVAIL_BALANCE);
如果我输入HAVING AVAIL_BALANCE <7000;有用。
使用join
select t1.ACCOUNT_ID, t1.CUST_ID, t1.PRODUCT_CD, t1.OPEN_BRANCH_ID from
Banking.Account t1
Inner join (
SELECT avg(AVAIL_BALANCE) avg_bal, ACCOUNT_ID, CUST_ID
FROM Banking.Account group by ACCOUNT_ID, CUST_ID
) t2 on t1.ACCOUNT_ID = t2.ACCOUNT_ID and t1.CUST_ID = t2.CUST_ID
where t1.AVAIL_BALANCE < t2.avg_bal;