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

ORA-00979 не е група по израз

Трябва да поставите всички колони на SELECT в GROUP BY или използвайте функции върху тях, които компресират резултатите до една стойност (като MIN , MAX или SUM ).

Един прост пример, за да разберете защо това се случва:Представете си, че имате база данни като тази:

FOO BAR
0   A
0   B

и изпълнявате SELECT * FROM table GROUP BY foo . Това означава, че базата данни трябва да върне един ред като резултат с първата колона 0 за да изпълни GROUP BY но вече има две стойности на bar да избирате от. Какъв резултат бихте очаквали - A или B ? Или базата данни трябва да върне повече от един ред, нарушавайки договора на GROUP BY ?



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

  2. Как да създадете процедура вътре в пакет в Oracle

  3. ORA-22905 - при запитване на тип таблица с оператор select

  4. Oracle PL/SQL - Как да създадете обикновена променлива от масив?

  5. Изграждане на проблем cx_Oracle - libclntsh.so.11.1 => не е намерено