pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

<legend id='V3gy3'><style id='V3gy3'><dir id='V3gy3'><q id='V3gy3'></q></dir></style></legend>

  • <tfoot id='V3gy3'></tfoot>
      <i id='V3gy3'><tr id='V3gy3'><dt id='V3gy3'><q id='V3gy3'><span id='V3gy3'><b id='V3gy3'><form id='V3gy3'><ins id='V3gy3'></ins><ul id='V3gy3'></ul><sub id='V3gy3'></sub></form><legend id='V3gy3'></legend><bdo id='V3gy3'><pre id='V3gy3'><center id='V3gy3'></center></pre></bdo></b><th id='V3gy3'></th></span></q></dt></tr></i><div class="fnlj7br" id='V3gy3'><tfoot id='V3gy3'></tfoot><dl id='V3gy3'><fieldset id='V3gy3'></fieldset></dl></div>
        <bdo id='V3gy3'></bdo><ul id='V3gy3'></ul>

      <small id='V3gy3'></small><noframes id='V3gy3'>

      1. MySQL 自定義函數將羅馬數字轉為阿拉伯數字

        MySQL Custom Function to Turn Roman Numeral Into Arabic(MySQL 自定義函數將羅馬數字轉為阿拉伯數字)
            <tbody id='kOOSk'></tbody>
            • <i id='kOOSk'><tr id='kOOSk'><dt id='kOOSk'><q id='kOOSk'><span id='kOOSk'><b id='kOOSk'><form id='kOOSk'><ins id='kOOSk'></ins><ul id='kOOSk'></ul><sub id='kOOSk'></sub></form><legend id='kOOSk'></legend><bdo id='kOOSk'><pre id='kOOSk'><center id='kOOSk'></center></pre></bdo></b><th id='kOOSk'></th></span></q></dt></tr></i><div class="vbrpt79" id='kOOSk'><tfoot id='kOOSk'></tfoot><dl id='kOOSk'><fieldset id='kOOSk'></fieldset></dl></div>
            • <tfoot id='kOOSk'></tfoot>

              1. <small id='kOOSk'></small><noframes id='kOOSk'>

                <legend id='kOOSk'><style id='kOOSk'><dir id='kOOSk'><q id='kOOSk'></q></dir></style></legend>
                  <bdo id='kOOSk'></bdo><ul id='kOOSk'></ul>
                  本文介紹了MySQL 自定義函數將羅馬數字轉為阿拉伯數字的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  好的,我需要一個 MySQL 函數來轉換羅馬數字字符串:

                  例如XXCVI

                  轉換成它的阿拉伯數字等價物.至于我為什么需要它,這是一個很長的故事,我只是需要.

                  基于某人發布的 PHP 函數,我創建了以下 MySQL 函數,但它似乎無休止地運行,我不知道為什么.(我可能只是太累了)

                  有人對我的函數有什么問題有任何提示,或者有更有效的方法將羅馬數字字符串轉換為阿拉伯數字嗎?

                  DROP 函數如果存在`romeToArabic`$$CREATE DEFINER=`root`@`localhost` FUNCTION `romeToArabic`(roman_in VARCHAR(64)) 返回 int(11)開始聲明數字 VARCHAR(2);聲明 int_val INT;聲明羅馬 VARCHAR(64);DECLARE res INT;聲明 no_more_rows 布爾值;聲明 num_rows INT DEFAULT 0;DECLARE roman_cur CURSOR FOR SELECT num, val FROM roman_numeral ORDER BY id;DECLARE CONTINUE HANDLER FOR NOT FOUND SET no_more_rows = TRUE;設置羅馬 = UPPER(roman_in);設置資源= 0;如果存在 roman_numeral,則刪除臨時表;創建臨時表 roman_numeral (`id` INT(8) NOT NULL AUTO_INCREMENT,`num` varchar(2) 默認為空,`val` int(8) NOT NULL, PRIMARY KEY (id)) ENGINE=MyISAM;INSERT INTO roman_numeral (num, val) VALUES ('M', 1000), ('CM', 900), ('D', 500), ('CD', 400), ('C', 100), ('XC', 90), ('L', 50), ('XL', 40), ('X', 10), ('IX', 9), ('V', 5), ('IV', 4), ('我', 1);打開 roman_cur;SELECT FOUND_ROWS() INTO num_rows;the_loop:環形FETCH roman_cur INTO 數字,int_val;IF no_more_rows THEN CLOSE roman_cur;離開 the_loop;萬一;WHILE INSTR(羅馬,數字)= 1 DOSET res = res + int_val;設置羅馬= SUBSTRING(羅馬,長度(數字));結束時;結束循環 the_loop;IF res>0 那么返回資源;別的返回-1;萬一;完$$

                  解決方案

                  不知道為什么你不工作,但谷歌搜索很快,我想出了這個鏈接:

                  http://forge.mysql.com/tools/tool.php?id=107

                  CREATE FUNCTION fromRoman (inRoman varchar(15)) RETURNS integer DETERMINISTIC開始DECLARE 數字 CHAR(7) DEFAULT 'IVXLCDM';聲明數字 TINYINT;DECLARE 前一個 INT DEFAULT 0;聲明當前的INT;DECLARE sum INT DEFAULT 0;SET inRoman = UPPER(inRoman);雖然長度(羅馬)>0 做SET digit := LOCATE(RIGHT(inRoman, 1), numeric) - 1;SET current := POW(10, FLOOR(digit/2)) * POW(5, MOD(digit, 2));SET sum := sum + POW(-1, current 

                  Ok, I need a MySQL Function that will convert a Roman Numeral String:

                  e.g. XXCVI

                  Into its Arabic numbering equivalent. Its a long story as to why I need it, I just do.

                  Based on a PHP function that someone posted, I created the following MySQL Function, but it seems to be running endlessly and I'm not sure why. (I might just be too tired)

                  Anybody have any hints as to what's wrong with my function, or have a more efficient way to convert a roman numeral string into an Arabic number?

                  DROP FUNCTION IF EXISTS `romeToArabic`$$
                  CREATE DEFINER=`root`@`localhost` FUNCTION `romeToArabic`(roman_in VARCHAR(64)) RETURNS int(11)
                  BEGIN
                    DECLARE numeral VARCHAR(2);
                    DECLARE int_val INT;
                    DECLARE roman VARCHAR(64);
                    DECLARE res INT;
                    DECLARE no_more_rows BOOLEAN;
                    DECLARE num_rows INT DEFAULT 0;
                    DECLARE roman_cur CURSOR FOR SELECT num, val FROM roman_numeral ORDER BY id;
                    DECLARE CONTINUE HANDLER FOR NOT FOUND SET no_more_rows = TRUE;
                    SET roman = UPPER(roman_in);
                    SET res = 0;
                  
                    DROP TEMPORARY TABLE IF EXISTS roman_numeral;
                    CREATE TEMPORARY TABLE roman_numeral (
                        `id` INT(8) NOT NULL AUTO_INCREMENT,
                        `num` varchar(2) DEFAULT NULL,
                        `val` int(8) NOT NULL, PRIMARY KEY (id)) ENGINE=MyISAM;
                  
                    INSERT INTO roman_numeral (num, val) VALUES ('M', 1000), ('CM', 900), ('D', 500), ('CD', 400), ('C', 100), ('XC', 90), ('L', 50), ('XL', 40), ('X', 10), ('IX', 9), ('V', 5), ('IV', 4), ('I', 1);
                  
                    OPEN roman_cur;
                    SELECT FOUND_ROWS() INTO num_rows;
                  
                   the_loop:
                    LOOP
                      FETCH  roman_cur INTO   numeral, int_val;
                      IF no_more_rows THEN CLOSE roman_cur;
                        LEAVE the_loop;
                      END IF;
                  
                      WHILE INSTR(roman, numeral) = 1 DO
                        SET res = res + int_val;
                        SET roman = SUBSTRING(roman, LENGTH(numeral));
                      END WHILE;
                  
                    END LOOP the_loop;
                    IF res > 0 THEN
                      RETURN res;
                    ELSE
                      RETURN -1;
                    END IF;
                  END$$
                  

                  解決方案

                  Not sure why your isnt working but googling was fast and I came up with this link:

                  http://forge.mysql.com/tools/tool.php?id=107

                  CREATE FUNCTION fromRoman (inRoman varchar(15)) RETURNS integer DETERMINISTIC
                  BEGIN
                  
                      DECLARE numeral CHAR(7) DEFAULT 'IVXLCDM';
                  
                      DECLARE digit TINYINT;
                      DECLARE previous INT DEFAULT 0;
                      DECLARE current INT;
                      DECLARE sum INT DEFAULT 0;
                  
                      SET inRoman = UPPER(inRoman);
                  
                      WHILE LENGTH(inRoman) > 0 DO
                          SET digit := LOCATE(RIGHT(inRoman, 1), numeral) - 1;
                          SET current := POW(10, FLOOR(digit / 2)) * POW(5, MOD(digit, 2));
                          SET sum := sum + POW(-1, current < previous) * current;
                          SET previous := current;
                          SET inRoman = LEFT(inRoman, LENGTH(inRoman) - 1);
                      END WHILE;
                  
                      RETURN sum;
                  END
                  

                  這篇關于MySQL 自定義函數將羅馬數字轉為阿拉伯數字的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                  【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                  相關文檔推薦

                  How to use windowing functions efficiently to decide next N number of rows based on N number of previous values(如何有效地使用窗口函數根據 N 個先前值來決定接下來的 N 個行)
                  reuse the result of a select expression in the quot;GROUP BYquot; clause?(在“GROUP BY中重用選擇表達式的結果;條款?)
                  Does ignore option of Pyspark DataFrameWriter jdbc function ignore entire transaction or just offending rows?(Pyspark DataFrameWriter jdbc 函數的 ignore 選項是忽略整個事務還是只是有問題的行?) - IT屋-程序員軟件開發技
                  Error while using INSERT INTO table ON DUPLICATE KEY, using a for loop array(使用 INSERT INTO table ON DUPLICATE KEY 時出錯,使用 for 循環數組)
                  pyspark mysql jdbc load An error occurred while calling o23.load No suitable driver(pyspark mysql jdbc load 調用 o23.load 時發生錯誤 沒有合適的驅動程序)
                  How to integrate Apache Spark with MySQL for reading database tables as a spark dataframe?(如何將 Apache Spark 與 MySQL 集成以將數據庫表作為 Spark 數據幀讀取?)

                    <bdo id='qRN5S'></bdo><ul id='qRN5S'></ul>
                      • <tfoot id='qRN5S'></tfoot><legend id='qRN5S'><style id='qRN5S'><dir id='qRN5S'><q id='qRN5S'></q></dir></style></legend>

                          • <i id='qRN5S'><tr id='qRN5S'><dt id='qRN5S'><q id='qRN5S'><span id='qRN5S'><b id='qRN5S'><form id='qRN5S'><ins id='qRN5S'></ins><ul id='qRN5S'></ul><sub id='qRN5S'></sub></form><legend id='qRN5S'></legend><bdo id='qRN5S'><pre id='qRN5S'><center id='qRN5S'></center></pre></bdo></b><th id='qRN5S'></th></span></q></dt></tr></i><div class="nlvnxv7" id='qRN5S'><tfoot id='qRN5S'></tfoot><dl id='qRN5S'><fieldset id='qRN5S'></fieldset></dl></div>

                            <small id='qRN5S'></small><noframes id='qRN5S'>

                              <tbody id='qRN5S'></tbody>
                            主站蜘蛛池模板: 水平筛厂家-三轴椭圆水平振动筛-泥沙震动筛设备_山东奥凯诺矿机 包装设计公司,产品包装设计|包装制作,包装盒定制厂家-汇包装【官方网站】 | 净水器代理,净水器招商,净水器加盟-FineSky德国法兹全屋净水 | 佛山商标注册_商标注册代理|专利注册申请_商标注册公司_鸿邦知识产权 | 石家庄救护车出租_重症转院_跨省跨境医疗转送_活动赛事医疗保障_康复出院_放弃治疗_腾康26年医疗护送转诊团队 | 上海冠顶工业设备有限公司-隧道炉,烘箱,UV固化机,涂装设备,高温炉,工业机器人生产厂家 | 深圳展厅设计_企业展馆设计_展厅设计公司_数字展厅设计_深圳百艺堂 | 精密模具-双色注塑模具加工-深圳铭洋宇通 | 水冷式工业冷水机组_风冷式工业冷水机_水冷螺杆冷冻机组-深圳市普威机械设备有限公司 | 洛阳防爆合格证办理-洛阳防爆认证机构-洛阳申请国家防爆合格证-洛阳本安防爆认证代办-洛阳沪南抚防爆电气技术服务有限公司 | 绿萝净除甲醛|深圳除甲醛公司|测甲醛怎么收费|培训机构|电影院|办公室|车内|室内除甲醛案例|原理|方法|价格立马咨询 | 两头忙,井下装载机,伸缩臂装载机,30装载机/铲车,50装载机/铲车厂家_价格-莱州巨浪机械有限公司 | 点胶机_点胶阀_自动点胶机_智能点胶机_喷胶机_点胶机厂家【欧力克斯】 | 威海防火彩钢板,威海岩棉复合板,威海彩钢瓦-文登区九龙岩棉复合板厂 | 防爆暖风机_防爆电暖器_防爆电暖风机_防爆电热油汀_南阳市中通智能科技集团有限公司 | 郑州宣传片拍摄-TVC广告片拍摄-微电影短视频制作-河南优柿文化传媒有限公司 | 浙江筋膜枪-按摩仪厂家-制造商-肩颈按摩仪哪家好-温州市合喜电子科技有限公司 | 番茄畅听邀请码怎么输入 - Dianw8.com| 动库网动库商城-体育用品专卖店:羽毛球,乒乓球拍,网球,户外装备,运动鞋,运动包,运动服饰专卖店-正品运动品网上商城动库商城网 - 动库商城 | CPSE安博会| Eiafans.com_环评爱好者 环评网|环评论坛|环评报告公示网|竣工环保验收公示网|环保验收报告公示网|环保自主验收公示|环评公示网|环保公示网|注册环评工程师|环境影响评价|环评师|规划环评|环评报告|环评考试网|环评论坛 - Powered by Discuz! | 酒精检测棒,数显温湿度计,酒安酒精测试仪,酒精检测仪,呼气式酒精检测仪-郑州欧诺仪器有限公司 | 不锈钢复合板厂家_钛钢复合板批发_铜铝复合板供应-威海泓方金属复合材料股份有限公司 | 炉门刀边腹板,焦化设备配件,焦化焦炉设备_沧州瑞创机械制造有限公司 | IIS7站长之家-站长工具-爱网站请使用IIS7站长综合查询工具,中国站长【WWW.IIS7.COM】 | 过跨车_过跨电瓶车_过跨转运车_横移电动平车_厂区转运车_无轨转运车 | 盛源真空泵|空压机-浙江盛源空压机制造有限公司-【盛源官网】 | 云南外加剂,云南速凝剂,云南外加剂代加工-普洱澜湄新材料科技有限公司 | 雷冲击高压发生器-水内冷直流高压发生器-串联谐振分压器-武汉特高压电力科技有限公司 | T恤衫定做,企业文化衫制作订做,广告T恤POLO衫定制厂家[源头工厂]-【汉诚T恤定制网】 | 深圳彩钢板_彩钢瓦_岩棉板_夹芯板_防火复合彩钢板_长鑫 | 压接机|高精度压接机|手动压接机|昆明可耐特科技有限公司[官网] 胶泥瓷砖胶,轻质粉刷石膏,嵌缝石膏厂家,腻子粉批发,永康家德兴,永康市家德兴建材厂 | 济南侦探调查-济南调查取证-山东私家侦探-山东白豹调查咨询公司 密集架|电动密集架|移动密集架|黑龙江档案密集架-大量现货厂家销售 | 苹果售后维修点查询,苹果iPhone授权售后维修服务中心 – 修果网 拼装地板,悬浮地板厂家,悬浮式拼装运动地板-石家庄博超地板科技有限公司 | 皮带机_移动皮带机_大倾角皮带机_皮带机厂家 - 新乡市国盛机械设备有限公司 | 拉卡拉POS机官网 - 官方直营POS机办理|在线免费领取 | 合肥触摸一体机_触摸查询机厂家_合肥拼接屏-安徽迅博智能科技 | 企业微信scrm管理系统_客户关系管理平台_私域流量运营工具_CRM、ERP、OA软件-腾辉网络 | 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库 | 厂厂乐-汇聚海量采购信息的B2B微营销平台-厂厂乐官网 | 避光流动池-带盖荧光比色皿-生化流动比色皿-宜兴市晶科光学仪器 东莞爱加真空科技有限公司-进口真空镀膜机|真空镀膜设备|Polycold维修厂家 | 深圳货架厂_仓库货架公司_重型仓储货架_线棒货架批发-深圳市诺普泰仓储设备有限公司 |