鑑於本次測試數據:
INSERT INTO CONSULTATION (IDCONSULTATION, IDPATIENT, DATECONSULTATION, "size")
VALUES(1, 10, TO_DATE('01-FEB-2015', 'DD-MON-YYYY'), 1);
INSERT INTO CONSULTATION (IDCONSULTATION, IDPATIENT, DATECONSULTATION, "size")
VALUES(2, 10, TO_DATE('02-FEB-2015', 'DD-MON-YYYY'), 3);
INSERT INTO CONSULTATION (IDCONSULTATION, IDPATIENT, DATECONSULTATION, "size")
VALUES(3, 11, TO_DATE('03-FEB-2015', 'DD-MON-YYYY'), 1);
INSERT INTO CONSULTATION (IDCONSULTATION, IDPATIENT, DATECONSULTATION, "size")
VALUES(4, 12, TO_DATE('04-FEB-2015', 'DD-MON-YYYY'), 1);
INSERT INTO CONSULTATION (IDCONSULTATION, IDPATIENT, DATECONSULTATION, "size")
VALUES(5, 13, TO_DATE('05-FEB-2015', 'DD-MON-YYYY'), 1);
INSERT INTO CONSULTATION (IDCONSULTATION, IDPATIENT, DATECONSULTATION, "size")
VALUES(6, 13, TO_DATE('06-FEB-2015', 'DD-MON-YYYY'), 2);
INSERT INTO CONSULTATION (IDCONSULTATION, IDPATIENT, DATECONSULTATION, "size")
VALUES(7, 13, TO_DATE('07-FEB-2015', 'DD-MON-YYYY'), 3);
INSERT INTO CONSULTATION (IDCONSULTATION, IDPATIENT, DATECONSULTATION, "size")
VALUES(8, 14, TO_DATE('08-FEB-2015', 'DD-MON-YYYY'), 1);
INSERT INTO CONSULTATION (IDCONSULTATION, IDPATIENT, DATECONSULTATION, "size")
VALUES(9, 15, TO_DATE('09-FEB-2015', 'DD-MON-YYYY'), 1);
INSERT INTO CONSULTATION (IDCONSULTATION, IDPATIENT, DATECONSULTATION, "size")
VALUES(10, 15, TO_DATE('10-FEB-2015', 'DD-MON-YYYY'), 12);
下面的查詢產生正確的結果(AVG_SIZE = 1
):
SELECT AVG("size") AS AVG_SIZE
FROM CONSULTATION
WHERE IDCONSULTATION IN (SELECT IDCONSULTATION
FROM CONSULTATION
WHERE (IDPATIENT, DATECONSULTATION) IN
(SELECT IDPATIENT, MIN(DATECONSULTATION) AS DATECONSULTATION
FROM CONSULTATION
GROUP BY IDPATIENT));
SQLFiddle here。
分享和享受。
列'taille'在哪裏? – walther 2015-02-07 18:22:31
請說明一下,你想要一個特定的條件還是要彙總結果? – 2015-02-07 18:23:28
不是很清楚你在這裏問什麼,也許你可以顯示一些樣本數據和預期的結果集 – 2015-02-07 18:23:46