원래 변진의 감문소국(甘文小國)이었는데, 신라 진흥왕 때 청주(靑州)로 고치고 군주(軍主)를 두었다. 진평왕 때 주(州)를 폐하였고, 문무왕 때 감문군(甘文郡)으로 하였으며, 경덕왕 때 개령으로 고쳤다. 1018년(현종 9)상주(尙州)에 예속시켰고, 1172년(명종 2) 감무를 두었다.
1413년(태종 13) 비로소 현감(縣監)을 두어 개령현이 되었다. 1601년(선조 34) 역적 길운절(吉雲節) 사건으로 한때 김산군(金山郡)에 합병시켰다가 5년 뒤 다시 선산도호부(善山都護府)에 이속시켰다. 1609년(광해군 1) 다시 개령현으로 복구되었다. 1895년(고종 32) 23부제 실시 때 개령군이 되어 대구부(大邱府) 관할에 속하였다가 이듬해 13도제 실시 때 경상북도의 4등군이 되었다.
1914년 행정구역개편에 따라 김산군ㆍ지례군(知禮郡)과 함께 김천군(金泉郡)으로 편성되어 개령면이 되었고, 1949년금릉군으로 개칭되었으며, 1995년금릉군과 김천시가 통합되어 김천시가 되었다.