SQL GROUP BY Mit COUNT () - Funktion

Habe ich eine Aufgabe, die beinhaltet die Schaffung einer Datenbank für ein Krankenhaus und ich habe seit der Begegnung ein sehr frustrierend Fehler, die ich kann nicht scheinen, um zu lösen, egal wie viel Forschung, die ich tun.

Die Fehler, die ich erhielt:

FEHLER in Zeile 1: ORA-00979: kein GROUP BY-Ausdruck

Die Struktur von meinem code für das einfügen der Werte ist:

SELECT  CONSULTANT.S_NO, DOCTOR.D_NAME, CONSULTANT.SPEC, 
PATIENT.P_ID, PATIENT.P_NAME, COUNT(CONSULTANT.P_ID)
FROM    PATIENT, CONSULTANT, DOCTOR                            
WHERE   PATIENT.P_ID = CONSULTANT.P_ID
AND     CONSULTANT.S_NO = DOCTOR.S_NO
GROUP BY CONSULTANT.S_NO;

Und die Struktur meiner Tabellen:

    CREATE TABLE PATIENT (
    P_ID        NUMBER NOT NULL,
    P_NAME      CHAR(20),
    ADDRESS     VARCHAR(20),
    DOB     DATE,
    WARD_NO     NUMBER NOT NULL, 
    C_S_NO      NUMBER NOT NULL,
    CONSTRAINT PK_PATIENT PRIMARY KEY(P_ID)
);

CREATE TABLE DOCTOR (
    S_NO        NUMBER NOT NULL,
    D_NAME      CHAR(20),
    APP_DATE    DATE,
    CONSTRAINT PK_DOC PRIMARY KEY(S_NO)
);

CREATE TABLE CONSULTANT (
    S_NO        NUMBER NOT NULL,
    P_ID        NUMBER NOT NULL,
    SPEC        CHAR(20),
    T_CODE      VARCHAR(20) NOT NULL,
    CONSTRAINT PK_CDOC PRIMARY KEY(S_NO)
);

Würde wirklich zu schätzen jede Hilfe jemand kann mir auf die Lösung dieses dilemma.

InformationsquelleAutor Barry McAuley | 2012-12-03

Schreibe einen Kommentar