我想PTNT_VST_CSNO从以下转换具有列名的值的顺序:
PTNT_VST_CSNO
VMIP1 VMIP10 VMIP11 VMIP2 VMIP20 VMIP21 VMIP3 VMIP31 VMIP32 VMIP5 VMIP6 VMIP7 VMIP8 VMIP9 VMOP10 VMOP11 VMOP12 VMOP3 VMOP30 VMOP31 VMOP32 VMOP4 VMOP40 VMOP41 VMOP42 VMOP43 VMOP7 VMOP70 VMOP71 VMOP8 VMOP9
到:
VMIP1 VMIP2 VMIP3 VMIP5 VMIP6 VMIP7 VMIP8 VMIP9 VMIP10 VMIP11 VMIP20 VMIP21 VMIP31 VMIP32 VMOP3 VMOP4 VMOP7 VMOP8 VMOP9 VMOP10 VMOP11 VMOP12 VMOP30 VMOP31 VMOP32 VMOP40 VMOP41 VMOP42 VMOP43 VMOP70 VMOP71
我想先对’vmip’的数字部分进行排序,然后再对’vmop’的数字部分进行排序。.我尝试了很多,但每次都失败。请帮助我解决排序问题…在此先感谢您
经过艰苦的尝试,我成功地通过以下方式解决了该问题。
SELECT ptnt_vst_csno FROM table_name ORDER BY Substring(ptnt_vst_csno, 1, Charindex('P', ptnt_vst_csno)), CONVERT(INT, Substring(Substring(ptnt_vst_csno, Charindex('P', ptnt_vst_csno), Len( ptnt_vst_csno)), 2, Len( ptnt_vst_csno)))