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

Не разбирам защо моята група от се проваля

Можете да го конвертирате в:

SELECT ENAME, MAX(SAL), STORES.CITY FROM EMPLOYEES 
INNER JOIN STORES 
ON EMPLOYEES.STORE_ID = STORES.STORE_ID
GROUP BY ENAME, STORES.CITY

или

SELECT EMPLOYEES.STORE_ID, MAX(SAL), STORES.CITY FROM EMPLOYEES 
INNER JOIN STORES 
ON EMPLOYEES.STORE_ID = STORES.STORE_ID
GROUP BY EMPLOYEES.STORE_ID, STORES.CITY

тъй като във вашия случай операторът SQL Select има негрупирани и неагрегирани колони в списъка за избор, това е нарушение на правилата. А за вашата цел може да предпочетете следното:

SELECT ENAME, MAX(SAL), STORES.STORE_ID, STORES.CITY FROM EMPLOYEES 
INNER JOIN STORES 
ON EMPLOYEES.STORE_ID = STORES.STORE_ID
GROUP BY ENAME, STORES.STORE_ID, STORES.CITY


  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. какво е папка oradiag_<user>?

  3. Намерете средната стойност на id за един месец

  4. Защо DECODE на Oracle ми дава различна стойност от NVL?

  5. Връщане на таблица в PL/SQL функция