原本的的一張表,填寫數據的字段為字符串varchar2類型,然后進行排序的時候,就會出現問題。會默直接默認判斷為第一個數字9最大,而不判斷整個數字的大小。
所以,就要用到TO_NUMBER函數
select * from T_GRGJJJCXX t order by TO_NUMBER(t.c_ye) desc
直接就可以把這個純數字的字段改成number類型進行排序。
然后查詢的時候,發現數據重復過多,這時候,根據某個字段判斷重復數據,我初步根據的是姓名去判斷,我寫的為
select t.name, t.C_GSMC, TO_NUMBER(t.c_ye) as 余額, TO_NUMBER(t.c_byjce) as 本月繳存額, TO_NUMBER(t.c_gzjs) as 工資基數 from T_GRGJJJCXX t where rowid = (select max(rowid) from T_GRGJJJCXX t1 where t.name = t1.name) order by TO_NUMBER(t.c_ye) desc
查找一個表根據rowid判斷是否有重復