Oracle
 sql >> база данни >  >> RDS >> Oracle

Валидна заявка GROUP BY не работи, когато се комбинира с INSERT INTO на Oracle

Пристигнах тук, опитвайки се да разреша подобна ситуация, така че ми се струва, че този вид проблем все още се появява.

В моя случай избягването на всяка трансформация на оптимизатора свърши работа.

Приложих подсказка NO_QUERY_TRANSFORMATION към "intoed" Изявление SELECT и грешката изчезна.

В случая с този въпрос трябва да го пренапиша като:

INSERT INTO MasterRecords
  (BatchRecordRecordID, SourceID, BatchID)
SELECT /*+NO_QUERY_TRANSFORMATION*/ RecordID, SourceID, BatchID
FROM (
    SELECT RecordID, BatchID, 101 AS SourceID
    FROM BatchRecords
    WHERE BatchID = 150
    GROUP BY RecordID, BatchID
) BR


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Защо Oracle добавя скрита колона тук?

  2. Как да изпълним Oracle SQL оператори с VBScript

  3. Oracle функционира с помощта на Hibernate

  4. `show create table` еквивалент в oracle sql

  5. По-бърз начин за зареждане на огромна таблица за съхранение на данни