선상은 고려시대부터 있었으며, 당시에는 지방의 관노비 중에서 장정을 뽑아 중앙에서 사역시키는 것을 뜻하였다.
조선시대의 선상은 서울에 머무는 기간을 기준으로 크게 두 가지로 나누었다. 하나는 선상노비로, 중앙 각 관서의 잡역에 종사할 노비의 십중팔구가 지방에 살았으므로 이들을 7번 교대로 경중(京中)에 입역시켰다. 즉, 한 사람이 3년마다 6개월 동안 경중에 입역했고, 봉족(奉足) 2명이 주어져 이들에게서 면포 · 정포 각 1필을 거두었다.
선상노비의 수는 공안(貢案)에 올랐다. 『경국대전』의 각사이전노비(各司吏典奴婢) 2,804명, 차비노(差備奴) · 근수노(根隨奴) 3,371명, 모두 6,175명의 대부분이 이들로 충당되었다. 이들이 맡은 일은 관원 수행, 각 궁(宮) · 전(殿)의 잡일, 각 사의 장인(匠人) · 성상(城上) · 방직(房直) · 고직(庫直) · 침선(針線) · 주모(酒母) · 집찬(執饌) · 세답(洗踏) 등이었다.
선상노비 중에는 부모의 노환이나 가족의 생계를 위해 대립(代立)이 불가피한 경우가 있었다. 그래서 대립법을 정해 대립 가는 1개월에 2필을 넘지 못하도록 규정하기도 했다.
한편, 여기(女妓) · 연화대(蓮花臺) · 여의(女醫)와 같이 지방 고을의 관비 중 나이 어리고 총민한 자를 뽑아 특별한 재예(才藝)를 갖추게 하여 서울에 계속 머물도록 하였다. 여의는 재예가 성취되면 본 고을로 돌려보냈다. 『경국대전』에는 3년마다 여기 150명, 연화대 10명, 여의 70명을 각 고을에서 뽑아 올리도록 규정되어 있다.