Tôi đã thực hiện một nhiệm vụ liên quan đến việc tạo cơ sở dữ liệu cho bệnh viện và tôi đã gặp phải một lỗi rất khó chịu mà tôi không thể sửa được cho dù tôi có nghiên cứu bao nhiêu làm.SQL GROUP BY - Sử dụng hàm COUNT()
Các lỗi tôi nhận được là:
ERROR at line 1: ORA-00.979: không phải là một GROUP BY biểu
Cấu trúc của mã của tôi để chèn các giá trị là:
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;
Và cấu trúc của các bảng của tôi là:
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)
);
Thực sự đánh giá cao bất kỳ sự giúp đỡ nào mà bất kỳ ai cũng có thể cho tôi giải quyết tình trạng khó xử này.
Vâng, nó hoạt động rất tốt! Cảm ơn rất nhiều :) –