상나일주(영어: Upper Nile)는 남수단을 구성하는 10개 주 가운데 하나로, 남수단 북동부에 위치한다. 주도는 말라칼이며 인구는 약 1,300,000명(2000년 기준), 면적은 77,773km2이다. 백나일강이 흐른다.