Question: Is there any way to put a non printing or non obtrusive character at the beginning of a string of data in sqlserver. so that when an **order by** is performed, the string is sorted after the letter z alphabetically? 

I have used a space at the beginning of the string to get the string at the top of the sorted list, but I am looking to do something similar to put a string at the end of the list.

I would rather not put another field such as "SortOrder" in the table to use to order the sort, and I would rather not have to sort the list in my code. 

Added: Yes I know this is a bad idea, thanks to all for mentioning it, but still, I am curious if what I am asking can be done

Answer: 
Could you you include something like:

```
"<SORT1>This is my string"
"<SORT2>I'd like this to go second"

```

And remove them later? I think using invisible characters is fragile and hacky.
In my opinion, an invisible character for this purpose is a bad idea because it pollutes the data. I would do exactly what you would rather not do and add a new column.

To modify the idea slightly, you could implement it not as a sort order, but a grouping order, defaults to 0, where a negative integer puts the group at top of the list and a positve integer at the bottom, and then "order by sort\_priority, foo"