본래 신라의 아화옥현(阿火屋縣, 또는 幷屋縣)이었는데, 757년(경덕왕 16) 비옥(比屋)이라 고쳐 상주(尙州) 소관의 문소군(聞韶郡: 지금의 의성군)의 영현으로 하였다. 1018년(현종 9) 상주목의 임내로 하였으며, 1390년(공양왕 2) 안정현(安貞縣)에 감무를 둘 때 비옥현을 겸임하게 하였다.
1421년(세종 3) 안정ㆍ비옥의 두 현을 병합하여 안비현(安比縣)으로 하였다가 2년 후 비안으로 고치고 치소를 비옥현 지역으로 옮겼다. 1895년(고종 32) 대구부 소관의 비안군이 되었다가 다음해 경상북도 소속의 군이 되었으며, 1914년 행정구역 개편 때 의성군에 병합되어 비안면이 되었다.
조선시대에는 진산(鎭山)인 성황산(城隍山) 남쪽 기슭에 자리잡고 있었으며 위천(渭川)과 쌍계천(雙溪川)이 합류하는 지점에 비옥한 평야가 전개되어 있었다. 교통상으로는 동쪽은 쌍계역(雙溪驛)을 통하여 의성과, 서쪽은 낙동강의 여차리진(餘次里津)을 건너 선산과 연결되었다. 북쪽은 관어대(觀魚臺)를 지나 안계역(安溪驛)을 거쳐 다인(多仁)과 용궁(龍宮)에 이르고, 남쪽은 위천을 건너서 군위와 연결하는 도로가 발달하였다.