Will this do?
CREATE TABLE #WO(WO int, RD varchar(10))
INSERT INTO #WO VALUES (122 ,'asas')
INSERT INTO #WO VALUES (123 ,'der')
INSERT INTO #WO VALUES (124 ,'wer3er')
INSERT INTO #WO VALUES (124 ,'rtre')
INSERT INTO #WO VALUES (124 ,'hehehe')
SELECT *, CASE WHEN Row_no > 1 THEN
CONVERT(varchar, WO)+ CHAR(63 + Row_no)
ELSE CONVERT(varchar,WO) END FROM
(Select * ,
Row_Number() OVER (Partition BY WO ORDER BY WO) as Row_No
FROM #WO) #t1
---------------------------------------------------------------------------------