色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql實(shí)現(xiàn)數(shù)字大小寫轉(zhuǎn)換

錢衛(wèi)國2年前11瀏覽0評論

MySQL 可以非常方便地實(shí)現(xiàn)數(shù)字大小寫轉(zhuǎn)換。下面是一個(gè)示例:

DELIMITER $$
CREATE FUNCTION ConvertNumber (inputNum INT) RETURNS VARCHAR(1024)
DETERMINISTIC
BEGIN
 DECLARE outputStr VARCHAR(1024);
 DECLARE len INT;
 DECLARE i INT;
 DECLARE digit INT;
 SET outputStr = '';
 SET len = CHAR_LENGTH(inputNum);
 SET i = 1;
 WHILE (i <= len) DO
SET digit = SUBSTRING(inputNum, i, 1);
CASE digit
WHEN 0 THEN SET outputStr = CONCAT(outputStr, '零');
WHEN 1 THEN SET outputStr = CONCAT(outputStr, '壹');
WHEN 2 THEN SET outputStr = CONCAT(outputStr, '貳');
WHEN 3 THEN SET outputStr = CONCAT(outputStr, '叁');
WHEN 4 THEN SET outputStr = CONCAT(outputStr, '肆');
WHEN 5 THEN SET outputStr = CONCAT(outputStr, '伍');
WHEN 6 THEN SET outputStr = CONCAT(outputStr, '陸');
WHEN 7 THEN SET outputStr = CONCAT(outputStr, '柒');
WHEN 8 THEN SET outputStr = CONCAT(outputStr, '捌');
WHEN 9 THEN SET outputStr = CONCAT(outputStr, '玖');
ELSE SET outputStr = CONCAT(outputStr, digit);
END CASE;
IF (i = len - 3) THEN SET outputStr = CONCAT(outputStr, '仟');
ELSEIF (i = len - 2) THEN SET outputStr = CONCAT(outputStr, '佰');
ELSEIF (i = len - 1) THEN SET outputStr = CONCAT(outputStr, '拾');
ELSEIF (i< len) THEN SET outputStr = CONCAT(outputStr, '億');
END IF;
SET i = i + 1;
 END WHILE;
 RETURN outputStr;
END$$
DELIMITER ;

以上代碼創(chuàng)建了一個(gè)名為 ConvertNumber 的函數(shù),在輸入的數(shù)字上運(yùn)行該函數(shù)將返回?cái)?shù)字的大寫表示方法。例如,如果輸入數(shù)字為 123456789,函數(shù)將返回“壹億貳仟叁佰肆拾伍萬陸仟柒佰捌拾玖”。

該函數(shù)使用了 MySQL 的 CASE 語句來將數(shù)字轉(zhuǎn)換為大寫字母。值得注意的是,在這個(gè)函數(shù)中使用了一個(gè) WHILE 循環(huán)來處理每個(gè)數(shù)字的位置,以生成正確的大寫形式。