SqlServer按中文數字排序

2021-07-22 03:17:31 字數 1236 閱讀 4804

表資料:

按名稱排序 並不能得到一二三四五六的順序

找到中文數字在'一二三四五六七**十'的位置

select id,name,substring(name,2,1) as 中文數字,charindex(substring(name,2,1),'一二三四五六七**十') as 中文數字所在位置 from liwei

按中文所在位置排序

select * from liwei order by charindex(substring(name,2,1),'一二三四五六七**十')

這個函式返回第乙個引數中從第二個引數指定的位置開始、第三個引數指定的長度的子字串。

該字串中的每個字元都被認為具有數字位置:第乙個字元的位置是 1,第二個字元的位置是 2,依此類推。

如果未指定第三個引數,將返回從第二個引數指定的位置開始直到字串結尾的子字串。

如果引數不是字串型別,將先使用 string() 函式轉換為字串,然後計算該轉換的結果。

如:以下函式呼叫返回「234」: substring("12345",2,3)

charindex 函式返回字元或者字串在另乙個字串中的起始位置。

charindex 函式呼叫方法如下:

charindex ( expression1 , expression2 [ , start_location ] ) 

expression1 是要到 expression2 中尋找的字元中,start_location 是 charindex 函式開始在 expression2 中找expression1 的位置。

charindex 函式返回乙個整數,返回的整數是要找的字串在被找的字串中的位置。假如 charindex 沒有找到要找的字串,那麼函式整數「0」。

數字轉中文數字與中文數字轉數字

利用陣列與map的資料結構進行中文數字與數字之間的互相轉換 public class numberutil private static final char cn num private static final char cn unit private static final string c...

數字轉中文數字大寫

做財務報表時常需要將金額轉化中文數字大寫,有點坑。author qzc createdate 2015年6月22日 下午6 08 20 version 1 類 介面 主要功能 public class numbertocn 漢語中貨幣單位大寫,這樣的設計類似於佔位符 private static f...

大寫中文數字 財務

壹 貳 叄 肆 伍 陸 柒 捌 玖 拾 佰 仟 萬 億 元 圓 角 分 零 整。這是大家經常要填寫的大寫數字,問什麼要用大寫數字呢?想必很多人都不是很清楚!先看看以下兩個有關大寫數字的 1 數碼與大 小寫數字的對照表 數碼 小寫數字 大寫數字 0 零 1 一 壹 2 二 貳 3 三 叄 參 4 四 ...