The fixed spectrum allocation causes inefficient utilization of licensed spectrum bands, due to which Cognitive Radio Networks (CRNs) emerged as a promising solution. Cognitive radio networks opportunistically utilize the spectrum holes, i.e., spectrum not in use by Primary Users (or PUs or licensed users) and allocate the spectrum dynamically. For every network including cognitive radio networks, routing is very important. Routing is the backbone of communication for transferring data from one machine to another in a multi-hop fashion. A good routing protocol is required for efficient communication and a good routing protocol is based on channel selection strategy. Therefore, a good channel selection strategy is required for efficient routing protocol so that routes should be stable and exist for longer time. In this paper, we focus on joint channel selection and routing from the perspective of cognitive radio networks. In this context, we provide a comprehensive survey on routing and channel selection in CRNs. More specifically, the importance of joint channel selection and routing for cognitive radio networks is first highlighted. Then classification and challenges of channel selection and routing are discussed in details. Routing with efficient channel selection in cognitive radio networks is then discussed by describing many routing strategies for cognitive radio networks, routing metrics, performance parameters, primary user activity modeling and spectrum aware strategies. Then guidelines for the development of efficient routing protocols are discussed. Subsequently, in last, a case study for channel selection strategy 'Spectrum Aware Dynamic Channel Assignment' (SA-DCA) is presented and illustrated that how routing can get benefit from it.