我一直在做一项涉及为医院创建数据库的任务,我遇到了一个非常令人沮丧的错误,无论我做了多少研究,我似乎都无法修复。
我收到的错误是:
第 1 行出现错误:ORA-00979:不是 GROUP BY 表达式
我用于插入值的代码结构是:
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;
我的表的结构是:
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)
);
非常感谢任何人可以帮助我解决这个困境。