Chasing a target of 153, Kolkata lost early wickets in the form of Aaron Finch and Baba Indrajit to get reduced to 32/2 at one stage.
Captain Shreyas Iyer (who scored 34 off 32 balls) and Rana, who remained unbeaten at 48 stabilised the Kolkata innings.
In the later part, Rana was aptly supported by 24-year-old from Uttar Pradesh, Singh who remained unbeaten scoring 42 off 23 balls.
As Rana hit a six in the first ball of the 19th over, Kolkata reached 158/3 to register their first after five consecutive losses.
Earlier, Rajasthan scored 152/5 in 20 overs, thanks to skipper Sanju Samson's 54 off 49 balls.
Two wickets were clinched by Tim Southee for Kolkata conceding 46 runs in four overs.