2016-12-04 4 views
0

Я пытаюсь вставить данные в таблицу, где идентификатор из таблицы не отличается, однако, я получаю следующее сообщение об ошибке:ORACLE APEX SQL, как считать отдельные поля

PL/SQL: ORA-02287: sequence number not allowed here. 

Что является лучшим способ обойти это?

Я скопировал приведенный ниже код;

INSERT INTO data_quality 
    SELECT QLTY_SEQ.nextval, userid, 'Duplicate ID' 
    FROM user 
    HAVING COUNT(DISTINCT(userid)) = 1; 

Благодарим вас в Advance.

ответ

1

У вас есть несколько вопросов здесь: после того, как вы исправили последовательность, у вас будет ошибка из-за того, что вы применяете HAVING без GROUP BY. Возможно, вам понадобится:

INSERT INTO data_quality 
    SELECT QLTY_SEQ.nextval, userid, 'Duplicate ID' 
    FROM 
    (
     SELECT userid 
     FROM user 
     GROUP BY userid 
     HAVING COUNT(DISTINCT(userid)) = 1 
    )