We introduce Semi-Matching with Demands (SMD), which models a certain problem in sensor networks of assigning individual sensors to sensing tasks. If there are multiple sensing tasks or missions to be accomplished simultaneously, and if sensor assignment must be exclusive, then this is a bipartite semi-matching problem. Each mission is associated with a demand value and a profit value; each sensor-mission pair is associated with a utility offer (possibly 0). The goal is a sensor assignment that maximizes the profits of the satisfied missions (with no credit for partially satisfied missions). SMD is NP-hard and as hard to approximate as Maximum Independent Set. Therefore we investigate less difficult constrained versions of the problem. We give a simple greedy Δ-approximation algorithm for a degree-constrained version (Δ-SMD), in which each mission receives positive utility offers from at most Δ sensors. For small Δ, we show that Δ-SMD is equivalent to k-Set Packing (with k = Δ), which yields a polynomial-time (Δ+1)/2-approximation. For Δ=∈2, we solve the problem optimally by reduction to maximum matching. Finally, we introduce a geometric version which remains strongly NP-hard but has a PTAS.