我是新(非常)在Oracle SQL世界SQL ORACLE - 查詢,顯示的清單,有多少人是在50
我有列名爲藝術家表:id_artist,這位演出,born_date,death_date ,也有一個叫國下面列的表:id_country,COUNTRY_NAME
我必須寫一個查詢,顯示國家的名單,有多少藝術家在50各有一個,像這樣:
國家| ARTIST OVER 50
JAPAN ................ 35
EEUU ................. 47
法國............ 85
我知道了年齡,但我沒有時間去做其餘的查詢。我試圖用clausule count做一些事情,但是我只能得到錯誤信息,比如'缺少表達'或者與羣組有關的問題。
這是我
SELECT COUNTRY_NAME, COUNT (round(MONTHS_BETWEEN(DEATH_DATE,BORN_DATE)/12)),
FROM ARTISTS A JOIN COUNTRY C ON A.COUNTRY=C.ID_COUNTRY
HAVING COUNT (round(MONTHS_BETWEEN(DEATH_DATE,BORN_DATE)/12))>50
GROUP BY COUNTRY_NAME
我感到非常非常失落試圖做到這一點查詢,正如我之前說的,我做的唯一的事情就是要知道每一個藝術家的年齡查詢
round(MONTHS_BETWEEN(DEATH_DATE,BORN_DATE)/12)
我希望你們中的一些能幫助我。
感謝
GROUP BY在HAVING之前。 – jarlh
在'FROM'之前刪除','。在'擁有'之前放置'group by'。 – JSapkota
是現在@ ZunairFatimi的評論 –