国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

巧用SQL語句實現其它進制到十進制轉換

2024-08-31 00:25:20
字體:
來源:轉載
供稿:網友

你可能不知道使用SQL語句也可以實現進制的轉換,下面就給出具體的例子講解了如何使用一條SQL語句實現其它進制到十進制轉換,具體實現方法如下:

(1)二進制轉換十進制

以下是引用片段:
  select sum(data1)
  from (select substr('1101', rownum, 1) * power
  (2, length('1101') - rownum) data1
  from dual
  connect by rownum <= length('1101'))

(2)八進制轉換十進制

以下是引用片段:
  select sum(data1)
  from (select substr('1101', rownum, 1) * power
  (8, length('1101') - rownum) data1
  from dual
  connect by rownum <= length('1101'))

(3)十六進制轉換十進制

以下是引用片段:
  select sum(data1)
  from (select (CASE upper(substr('2D', rownum, 1))
  WHEN 'A' THEN '10'
  WHEN 'B' THEN '11'
  WHEN 'C' THEN '12'
  WHEN 'D' THEN '13'
  WHEN 'E' THEN '14'
  WHEN 'F' THEN '15'
  ELSE substr('2D', rownum, 1)
  END) * power(16, length('2D') - rownum) data1
  from dual
  connect by rownum <= length('2D'))

注釋:

對其它進制可以根據例子將power的底數改成相應的進制就可以了。

本文只是一個例子,大家可以把它封裝成一個通用函數進行實用。

大家在試的時候將里面相應的其它進制的數值換成自己的數據就可以了(有多處)。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阳新县| 永胜县| 景谷| 乐东| 周至县| 鄂托克旗| 新疆| 行唐县| 开阳县| 濉溪县| 徐汇区| 九寨沟县| 鄂托克旗| 锡林浩特市| 香港| 崇义县| 彭山县| 张掖市| 舞钢市| 武义县| 磐安县| 台北市| 百色市| 翼城县| 资讯 | 达日县| 龙山县| 嘉义县| 龙陵县| 桐乡市| 上栗县| 嘉定区| 嘉黎县| 焉耆| 灌云县| 南城县| 宜川县| 江源县| 吉木萨尔县| 兴海县| 和平区|