3

ORA-00904 'c' 無効な識別子エラーが発生します。このエイリアスの何が問題になっていますか?

select NO, count(JOINT_NO) as c
from JOINT
WHERE HOLDER = 'Y' AND JOINT.c > 1
GROUP BY NO;
4

3 に答える 3

3

count > 1 のレコードを取得したいので、同じクエリIndentifier Cの句で使用することはできません。WHERE

select NO, count(JOINT_NO) as c
from JOINT
WHERE HOLDER = 'Y'
GROUP BY NO
HAVING COUNT(JOINT_NO)>1;
于 2012-11-23T11:09:55.670 に答える
2

ctableに列が存在しないためJOINT、表示されるエラー メッセージが表示されます。

クエリを次のように変更します。

select NO, count(JOINT_NO) as c
from JOINT
WHERE HOLDER = 'Y'
GROUP BY NO
HAVING count(JOINT_NO) > 1;
于 2012-11-23T11:10:07.667 に答える
0

FROM 句で subselect(subquery) を使用できます。

 select T1.NO,T1.c
    from
    (
      select NO, count(JOINT_NO) as c
      from JOINT
      WHERE HOLDER = 'Y' 
      GROUP BY NO
    ) as T1
    where T1.c > 1

また、次のものを使用できます:

    select NO, count(JOINT_NO) as c
    from JOINT
    WHERE HOLDER = 'Y'
    GROUP BY NO
    HAVING COUNT(JOINT_NO)>1
于 2020-04-07T06:29:53.897 に答える