As mentioned above "R0" is the alias which is generated automatically. As query is done here for Recipient table(NmsRecipient R0) so it "R0". if you query from Delivery table (NmsDelivery D0) it is "D0" and for broad log it is (NmsBroadLogRcp) "B0".
Yes it is is best practice to use alias and most of RDBMS recommends this.
You can find several articles on internet to know the benefits of using alias's .
It is the alias. You see "FROM NmsRecipient R0" in the second line. The system is creating an alias for the table, NmsRecipient. It is a best practice to alias data sources but also helps to clarify a field name that may exist in multiple data sources being queried. It is the same as saying NmsRecipient.FirstName, NmsRecipient.LastName, etc...
I do believe that ACM will always alias tables. it would not always be R0. Especially when there are more than 1 table involved.