...Without using PHP or some kind of script language? I don't think there mysql has an advance function like that.
What I would do is this.
Create another field called "dept."
Write a script that goes through the database, gets the "username" field which is:
John Doe@Accounting
$mydata = explode('@', $username_field);
$mydata[0] will have the value 'John Doe'
$mydata[1] will have the value 'Accounting'
From here, you can update username = $mydata[0] and dept = $mydata[1]
Do the same for the entire database. To be on the safe side, I would create another field called 'username2' and update everything in that. When everything is done, then I can delete the original username field.