ABisht, what Edition, Version of DB2 are you using? I just tried your statement on DB2 z/OS v9 and DB2 Express-C LUW V9.7 and returned 'Z000' every time on both systems. I processed the query in QMF on z/OS and Command Editor on LUW.
If you consider the soundex algorithm, you'll probably find that it is defined only for alphabetic characters. Subsequently, for numeric (non-alphabetic) characters its result is undefined, which is exactly what you are seeing.