wp_update_user and user_login
The most frustrating part till now, the solution what i got, is writing a query which i didn’t liked. So i was searching more of a native wordpress function. Wen i was using wp_update_user with its arguments & i was adding user_login to update my username. Everything was fine but when i tried updating the user_login it used to be the same the day i created the user. So then after looking all over unfortunately there is only one way to do it and which is :
$wpdb->query("UPDATE $wpdb->users SET user_login = '[new_user]' WHERE ID = '[user_id]'");
WordPress strictly discourage to update username/user_login.