mysql 数据表中文转拼音 sql中文转拼音 SQL中文转拼音首字母大写

这里以城市列表为例

目录

1.导入基础数据

2.创建函数

3. 执行语句


1.导入基础数据

     map_city.sql

原始图如下:

      t_base_pinyin  基础数据对照表

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for t_base_pinyin
-- ----------------------------
DROP TABLE IF EXISTS `t_base_pinyin`;
CREATE TABLE `t_base_pinyin`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `pin_yin_` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
  `code_` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 397 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of t_base_pinyin
-- ----------------------------
INSERT INTO `t_base_pinyin` VALUES (1, 'a', '20319');
INSERT INTO `t_base_pinyin` VALUES (2, 'ai', '20317');
INSERT INTO `t_base_pinyin` VALUES (3, 'an', '20304');
INSERT INTO `t_base_pinyin` VALUES (4, 'ang', '20295');
INSERT INTO `t_base_pinyin` VALUES (5, 'ao', '20292');
INSERT INTO `t_base_pinyin` VALUES (6, 'ba', '20283');
INSERT INTO `t_base_pinyin` VALUES (7, 'bai', '20265');
INSERT INTO `t_base_pinyin` VALUES (8, 'ban', '20257');
INSERT INTO `t_base_pinyin` VALUES (9, 'bang', '20242');
INSERT INTO `t_base_pinyin` VALUES (10, 'bao', '20230');
INSERT INTO `t_base_pinyin` VALUES (11, 'bei', '20051');
INSERT INTO `t_base_pinyin` VALUES (12, 'ben', '20036');
INSERT INTO `t_base_pinyin` VALUES (13, 'beng', '20032');
INSERT INTO `t_base_pinyin` VALUES (14, 'bi', '20026');
INSERT INTO `t_base_pinyin` VALUES (15, 'bian', '20002');
INSERT INTO `t_base_pinyin` VALUES (16, 'biao', '19990');
INSERT INTO `t_base_pinyin` VALUES (17, 'bie', '19986');
INSERT INTO `t_base_pinyin` VALUES (18, 'bin', '19982');
INSERT INTO `t_base_pinyin` VALUES (19, 'bing', '19976');
INSERT INTO `t_base_pinyin` VALUES (20, 'bo', '19805');
INSERT INTO `t_base_pinyin` VALUES (21, 'bu', '19784');
INSERT INTO `t_base_pinyin` VALUES (22, 'ca', '19775');
INSERT INTO `t_base_pinyin` VALUES (23, 'cai', '19774');
INSERT INTO `t_base_pinyin` VALUES (24, 'can', '19763');
INSERT INTO `t_base_pinyin` VALUES (25, 'cang', '19756');
INSERT INTO `t_base_pinyin` VALUES (26, 'cao', '19751');
INSERT INTO `t_base_pinyin` VALUES (27, 'ce', '19746');
INSERT INTO `t_base_pinyin` VALUES (28, 'ceng', '19741');
INSERT INTO `t_base_pinyin` VALUES (29, 'cha', '19739');
INSERT INTO `t_base_pinyin` VALUES (30, 'chai', '19728');
INSERT INTO `t_base_pinyin` VALUES (31, 'chan', '19725');
INSERT INTO `t_base_pinyin` VALUES (32, 'chang', '19715');
INSERT INTO `t_base_pinyin` VALUES (33, 'chao', '19540');
INSERT INTO `t_base_pinyin` VALUES (34, 'che', '19531');
INSERT INTO `t_base_pinyin` VALUES (35, 'chen', '19525');
INSERT INTO `t_base_pinyin` VALUES (36, 'cheng', '19515');
INSERT INTO `t_base_pinyin` VALUES (37, 'chi', '19500');
INSERT INTO `t_base_pinyin` VALUES (38, 'chong', '19484');
INSERT INTO `t_base_pinyin` VALUES (39, 'chou', '19479');
INSERT INTO `t_base_pinyin` VALUES (40, 'chu', '19467');
INSERT INTO `t_base_pinyin` VALUES (41, 'chuai', '19289');
INSERT INTO `t_base_pinyin` VALUES (42, 'chuan', '19288');
INSERT INTO `t_base_pinyin` VALUES (43, 'chuang', '19281');
INSERT INTO `t_base_pinyin` VALUES (44, 'chui', '19275');
INSERT INTO `t_base_pinyin` VALUES (45, 'chun', '19270');
INSERT INTO `t_base_pinyin` VALUES (46, 'chuo', '19263');
INSERT INTO `t_base_pinyin` VALUES (47, 'ci', '19261');
INSERT INTO `t_base_pinyin` VALUES (48, 'cong', '19249');
INSERT INTO `t_base_pinyin` VALUES (49, 'cou', '19243');
INSERT INTO `t_base_pinyin` VALUES (50, 'cu', '19242');
INSERT INTO `t_base_pinyin` VALUES (51, 'cuan', '19238');
INSERT INTO `t_base_pinyin` VALUES (52, 'cui', '19235');
INSERT INTO `t_base_pinyin` VALUES (53, 'cun', '19227');
INSERT INTO `t_base_pinyin` VALUES (54, 'cuo', '19224');
INSERT INTO `t_base_pinyin` VALUES (55, 'da', '19218');
INSERT INTO `t_base_pinyin` VALUES (56, 'dai', '19212');
INSERT INTO `t_base_pinyin` VALUES (57, 'dan', '19038');
INSERT INTO `t_base_pinyin` VALUES (58, 'dang', '19023');
INSERT INTO `t_base_pinyin` VALUES (59, 'dao', '19018');
INSERT INTO `t_base_pinyin` VALUES (60, 'de', '19006');
INSERT INTO `t_base_pinyin` VALUES (61, 'deng', '19003');
INSERT INTO `t_base_pinyin` VALUES (62, 'di', '18996');
INSERT INTO `t_base_pinyin` VALUES (63, 'dian', '18977');
INSERT INTO `t_base_pinyin` VALUES (64, 'diao', '18961');
INSERT INTO `t_base_pinyin` VALUES (65, 'die', '18952');
INSERT INTO `t_base_pinyin` VALUES (66, 'ding', '18783');
INSERT INTO `t_base_pinyin` VALUES (67, 'diu', '18774');
INSERT INTO `t_base_pinyin` VALUES (68, 'dong', '18773');
INSERT INTO `t_base_pinyin` VALUES (69, 'dou', '18763');
INSERT INTO `t_base_pinyin` VALUES (70, 'du', '18756');
INSERT INTO `t_base_pinyin` VALUES (71, 'duan', '18741');
INSERT INTO `t_base_pinyin` VALUES (72, 'dui', '18735');
INSERT INTO `t_base_pinyin` VALUES (73, 'dun', '18731');
INSERT INTO `t_base_pinyin` VALUES (74, 'duo', '18722');
INSERT INTO `t_base_pinyin` VALUES (75, 'e', '18710');
INSERT INTO `t_base_pinyin` VALUES (76, 'en', '18697');
INSERT INTO `t_base_pinyin` VALUES (77, 'er', '18696');
INSERT INTO `t_base_pinyin` VALUES (78, 'fa', '18526');
INSERT INTO `t_base_pinyin` VALUES (79, 'fan', '18518');
INSERT INTO `t_base_pinyin` VALUES (80, 'fang', '18501');
INSERT INTO `t_base_pinyin` VALUES (81, 'fei', '18490');
INSERT INTO `t_base_pinyin` VALUES (82, 'fen', '18478');
INSERT INTO `t_base_pinyin` VALUES (83, 'feng', '18463');
INSERT INTO `t_base_pinyin` VALUES (84, 'fo', '18448');
INSERT INTO `t_base_pinyin` VALUES (85, 'fou', '18447');
INSERT INTO `t_base_pinyin` VALUES (86, 'fu', '18446');
INSERT INTO `t_base_pinyin` VALUES (87, 'ga', '18239');
INSERT INTO `t_base_pinyin` VALUES (88, 'gai', '18237');
INSERT INTO `t_base_pinyin` VALUES (89, 'gan', '18231');
INSERT INTO `t_base_pinyin` VALUES (90, 'gang', '18220');
INSERT INTO `t_base_pinyin` VALUES (91, 'gao', '18211');
INSERT INTO `t_base_pinyin` VALUES (92, 'ge', '18201');
INSERT INTO `t_base_pinyin` VALUES (93, 'gei', '18184');
INSERT INTO `t_base_pinyin` VALUES (94, 'gen', '18183');
INSERT INTO `t_base_pinyin` VALUES (95, 'geng', '18181');
INSERT INTO `t_base_pinyin` VALUES (96, 'gong', '18012');
INSERT INTO `t_base_pinyin` VALUES (97, 'gou', '17997');
INSERT INTO `t_base_pinyin` VALUES (98, 'gu', '17988');
INSERT INTO `t_base_pinyin` VALUES (99, 'gua', '17970');
INSERT INTO `t_base_pinyin` VALUES (100, 'guai', '17964');
INSERT INTO `t_base_pinyin` VALUES (101, 'guan', '17961');
INSERT INTO `t_base_pinyin` VALUES (102, 'guang', '17950');
INSERT INTO `t_base_pinyin` VALUES (103, 'gui', '17947');
INSERT INTO `t_base_pinyin` VALUES (104, 'gun', '17931');
INSERT INTO `t_base_pinyin` VALUES (105, 'guo', '17928');
INSERT INTO `t_base_pinyin` VALUES (106, 'ha', '17922');
INSERT INTO `t_base_pinyin` VALUES (107, 'hai', '17759');
INSERT INTO `t_base_pinyin` VALUES (108, 'han', '17752');
INSERT INTO `t_base_pinyin` VALUES (109, 'hang', '17733');
INSERT INTO `t_base_pinyin` VALUES (110, 'hao', '17730');
INSERT INTO `t_base_pinyin` VALUES (111, 'he', '17721');
INSERT INTO `t_base_pinyin` VALUES (112, 'hei', '17703');
INSERT INTO `t_base_pinyin` VALUES (113, 'hen', '17701');
INSERT INTO `t_base_pinyin` VALUES (114, 'heng', '17697');
INSERT INTO `t_base_pinyin` VALUES (115, 'hong', '17692');
INSERT INTO `t_base_pinyin` VALUES (116, 'hou', '17683');
INSERT INTO `t_base_pinyin` VALUES (117, 'hu', '17676');
INSERT INTO `t_base_pinyin` VALUES (118, 'hua', '17496');
INSERT INTO `t_base_pinyin` VALUES (119, 'huai', '17487');
INSERT INTO `t_base_pinyin` VALUES (120, 'huan', '17482');
INSERT INTO `t_base_pinyin` VALUES (121, 'huang', '17468');
INSERT INTO `t_base_pinyin` VALUES (122, 'hui', '17454');
INSERT INTO `t_base_pinyin` VALUES (123, 'hun', '17433');
INSERT INTO `t_base_pinyin` VALUES (124, 'huo', '17427');
INSERT INTO `t_base_pinyin` VALUES (125, 'ji', '17417');
INSERT INTO `t_base_pinyin` VALUES (126, 'jia', '17202');
INSERT INTO `t_base_pinyin` VALUES (127, 'jian', '17185');
INSERT INTO `t_base_pinyin` VALUES (128, 'jiang', '16983');
INSERT INTO `t_base_pinyin` VALUES (129, 'jiao', '16970');
INSERT INTO `t_base_pinyin` VALUES (130, 'jie', '16942');
INSERT INTO `t_base_pinyin` VALUES (131, 'jin', '16915');
INSERT INTO `t_base_pinyin` VALUES (132, 'jing', '16733');
INSERT INTO `t_base_pinyin` VALUES (133, 'jiong', '16708');
INSERT INTO `t_base_pinyin` VALUES (134, 'jiu', '16706');
INSERT INTO `t_base_pinyin` VALUES (135, 'ju', '16689');
INSERT INTO `t_base_pinyin` VALUES (136, 'juan', '16664');
INSERT INTO `t_base_pinyin` VALUES (137, 'jue', '16657');
INSERT INTO `t_base_pinyin` VALUES (138, 'jun', '16647');
INSERT INTO `t_base_pinyin` VALUES (139, 'ka', '16474');
INSERT INTO `t_base_pinyin` VALUES (140, 'kai', '16470');
INSERT INTO `t_base_pinyin` VALUES (141, 'kan', '16465');
INSERT INTO `t_base_pinyin` VALUES (142, 'kang', '16459');
INSERT INTO `t_base_pinyin` VALUES (143, 'kao', '16452');
INSERT INTO `t_base_pinyin` VALUES (144, 'ke', '16448');
INSERT INTO `t_base_pinyin` VALUES (145, 'ken', '16433');
INSERT INTO `t_base_pinyin` VALUES (146, 'keng', '16429');
INSERT INTO `t_base_pinyin` VALUES (147, 'kong', '16427');
INSERT INTO `t_base_pinyin` VALUES (148, 'kou', '16423');
INSERT INTO `t_base_pinyin` VALUES (149, 'ku', '16419');
INSERT INTO `t_base_pinyin` VALUES (150, 'kua', '16412');
INSERT INTO `t_base_pinyin` VALUES (151, 'kuai', '16407');
INSERT INTO `t_base_pinyin` VALUES (152, 'kuan', '16403');
INSERT INTO `t_base_pinyin` VALUES (153, 'kuang', '16401');
INSERT INTO `t_base_pinyin` VALUES (154, 'kui', '16393');
INSERT INTO `t_base_pinyin` VALUES (155, 'kun', '16220');
INSERT INTO `t_base_pinyin` VALUES (156, 'kuo', '16216');
INSERT INTO `t_base_pinyin` VALUES (157, 'la', '16212');
INSERT INTO `t_base_pinyin` VALUES (158, 'lai', '16205');
INSERT INTO `t_base_pinyin` VALUES (159, 'lan', '16202');
INSERT INTO `t_base_pinyin` VALUES (160, 'lang', '16187');
INSERT INTO `t_base_pinyin` VALUES (161, 'lao', '16180');
INSERT INTO `t_base_pinyin` VALUES (162, 'le', '16171');
INSERT INTO `t_base_pinyin` VALUES (163, 'lei', '16169');
INSERT INTO `t_base_pinyin` VALUES (164, 'leng', '16158');
INSERT INTO `t_base_pinyin` VALUES (165, 'li', '16155');
INSERT INTO `t_base_pinyin` VALUES (166, 'lia', '15959');
INSERT INTO `t_base_pinyin` VALUES (167, 'lian', '15958');
INSERT INTO `t_base_pinyin` VALUES (168, 'liang', '15944');
INSERT INTO `t_base_pinyin` VALUES (169, 'liao', '15933');
INSERT INTO `t_base_pinyin` VALUES (170, 'lie', '15920');
INSERT INTO `t_base_pinyin` VALUES (171, 'lin', '15915');
INSERT INTO `t_base_pinyin` VALUES (172, 'ling', '15903');
INSERT INTO `t_base_pinyin` VALUES (173, 'liu', '15889');
INSERT INTO `t_base_pinyin` VALUES (174, 'long', '15878');
INSERT INTO `t_base_pinyin` VALUES (175, 'lou', '15707');
INSERT INTO `t_base_pinyin` VALUES (176, 'lu', '15701');
INSERT INTO `t_base_pinyin` VALUES (177, 'lv', '15681');
INSERT INTO `t_base_pinyin` VALUES (178, 'luan', '15667');
INSERT INTO `t_base_pinyin` VALUES (179, 'lue', '15661');
INSERT INTO `t_base_pinyin` VALUES (180, 'lun', '15659');
INSERT INTO `t_base_pinyin` VALUES (181, 'luo', '15652');
INSERT INTO `t_base_pinyin` VALUES (182, 'ma', '15640');
INSERT INTO `t_base_pinyin` VALUES (183, 'mai', '15631');
INSERT INTO `t_base_pinyin` VALUES (184, 'man', '15625');
INSERT INTO `t_base_pinyin` VALUES (185, 'mang', '15454');
INSERT INTO `t_base_pinyin` VALUES (186, 'mao', '15448');
INSERT INTO `t_base_pinyin` VALUES (187, 'me', '15436');
INSERT INTO `t_base_pinyin` VALUES (188, 'mei', '15435');
INSERT INTO `t_base_pinyin` VALUES (189, 'men', '15419');
INSERT INTO `t_base_pinyin` VALUES (190, 'meng', '15416');
INSERT INTO `t_base_pinyin` VALUES (191, 'mi', '15408');
INSERT INTO `t_base_pinyin` VALUES (192, 'mian', '15394');
INSERT INTO `t_base_pinyin` VALUES (193, 'miao', '15385');
INSERT INTO `t_base_pinyin` VALUES (194, 'mie', '15377');
INSERT INTO `t_base_pinyin` VALUES (195, 'min', '15375');
INSERT INTO `t_base_pinyin` VALUES (196, 'ming', '15369');
INSERT INTO `t_base_pinyin` VALUES (197, 'miu', '15363');
INSERT INTO `t_base_pinyin` VALUES (198, 'mo', '15362');
INSERT INTO `t_base_pinyin` VALUES (199, 'mou', '15183');
INSERT INTO `t_base_pinyin` VALUES (200, 'mu', '15180');
INSERT INTO `t_base_pinyin` VALUES (201, 'na', '15165');
INSERT INTO `t_base_pinyin` VALUES (202, 'nai', '15158');
INSERT INTO `t_base_pinyin` VALUES (203, 'nan', '15153');
INSERT INTO `t_base_pinyin` VALUES (204, 'nang', '15150');
INSERT INTO `t_base_pinyin` VALUES (205, 'nao', '15149');
INSERT INTO `t_base_pinyin` VALUES (206, 'ne', '15144');
INSERT INTO `t_base_pinyin` VALUES (207, 'nei', '15143');
INSERT INTO `t_base_pinyin` VALUES (208, 'nen', '15141');
INSERT INTO `t_base_pinyin` VALUES (209, 'neng', '15140');
INSERT INTO `t_base_pinyin` VALUES (210, 'ni', '15139');
INSERT INTO `t_base_pinyin` VALUES (211, 'nian', '15128');
INSERT INTO `t_base_pinyin` VALUES (212, 'niang', '15121');
INSERT INTO `t_base_pinyin` VALUES (213, 'niao', '15119');
INSERT INTO `t_base_pinyin` VALUES (214, 'nie', '15117');
INSERT INTO `t_base_pinyin` VALUES (215, 'nin', '15110');
INSERT INTO `t_base_pinyin` VALUES (216, 'ning', '15109');
INSERT INTO `t_base_pinyin` VALUES (217, 'niu', '14941');
INSERT INTO `t_base_pinyin` VALUES (218, 'nong', '14937');
INSERT INTO `t_base_pinyin` VALUES (219, 'nu', '14933');
INSERT INTO `t_base_pinyin` VALUES (220, 'nv', '14930');
INSERT INTO `t_base_pinyin` VALUES (221, 'nuan', '14929');
INSERT INTO `t_base_pinyin` VALUES (222, 'nue', '14928');
INSERT INTO `t_base_pinyin` VALUES (223, 'nuo', '14926');
INSERT INTO `t_base_pinyin` VALUES (224, 'o', '14922');
INSERT INTO `t_base_pinyin` VALUES (225, 'ou', '14921');
INSERT INTO `t_base_pinyin` VALUES (226, 'pa', '14914');
INSERT INTO `t_base_pinyin` VALUES (227, 'pai', '14908');
INSERT INTO `t_base_pinyin` VALUES (228, 'pan', '14902');
INSERT INTO `t_base_pinyin` VALUES (229, 'pang', '14894');
INSERT INTO `t_base_pinyin` VALUES (230, 'pao', '14889');
INSERT INTO `t_base_pinyin` VALUES (231, 'pei', '14882');
INSERT INTO `t_base_pinyin` VALUES (232, 'pen', '14873');
INSERT INTO `t_base_pinyin` VALUES (233, 'peng', '14871');
INSERT INTO `t_base_pinyin` VALUES (234, 'pi', '14857');
INSERT INTO `t_base_pinyin` VALUES (235, 'pian', '14678');
INSERT INTO `t_base_pinyin` VALUES (236, 'piao', '14674');
INSERT INTO `t_base_pinyin` VALUES (237, 'pie', '14670');
INSERT INTO `t_base_pinyin` VALUES (238, 'pin', '14668');
INSERT INTO `t_base_pinyin` VALUES (239, 'ping', '14663');
INSERT INTO `t_base_pinyin` VALUES (240, 'po', '14654');
INSERT INTO `t_base_pinyin` VALUES (241, 'pu', '14645');
INSERT INTO `t_base_pinyin` VALUES (242, 'qi', '14630');
INSERT INTO `t_base_pinyin` VALUES (243, 'qia', '14594');
INSERT INTO `t_base_pinyin` VALUES (244, 'qian', '14429');
INSERT INTO `t_base_pinyin` VALUES (245, 'qiang', '14407');
INSERT INTO `t_base_pinyin` VALUES (246, 'qiao', '14399');
INSERT INTO `t_base_pinyin` VALUES (247, 'qie', '14384');
INSERT INTO `t_base_pinyin` VALUES (248, 'qin', '14379');
INSERT INTO `t_base_pinyin` VALUES (249, 'qing', '14368');
INSERT INTO `t_base_pinyin` VALUES (250, 'qiong', '14355');
INSERT INTO `t_base_pinyin` VALUES (251, 'qiu', '14353');
INSERT INTO `t_base_pinyin` VALUES (252, 'qu', '14345');
INSERT INTO `t_base_pinyin` VALUES (253, 'quan', '14170');
INSERT INTO `t_base_pinyin` VALUES (254, 'que', '14159');
INSERT INTO `t_base_pinyin` VALUES (255, 'qun', '14151');
INSERT INTO `t_base_pinyin` VALUES (256, 'ran', '14149');
INSERT INTO `t_base_pinyin` VALUES (257, 'rang', '14145');
INSERT INTO `t_base_pinyin` VALUES (258, 'rao', '14140');
INSERT INTO `t_base_pinyin` VALUES (259, 're', '14137');
INSERT INTO `t_base_pinyin` VALUES (260, 'ren', '14135');
INSERT INTO `t_base_pinyin` VALUES (261, 'reng', '14125');
INSERT INTO `t_base_pinyin` VALUES (262, 'ri', '14123');
INSERT INTO `t_base_pinyin` VALUES (263, 'rong', '14122');
INSERT INTO `t_base_pinyin` VALUES (264, 'rou', '14112');
INSERT INTO `t_base_pinyin` VALUES (265, 'ru', '14109');
INSERT INTO `t_base_pinyin` VALUES (266, 'ruan', '14099');
INSERT INTO `t_base_pinyin` VALUES (267, 'rui', '14097');
INSERT INTO `t_base_pinyin` VALUES (268, 'run', '14094');
INSERT INTO `t_base_pinyin` VALUES (269, 'ruo', '14092');
INSERT INTO `t_base_pinyin` VALUES (270, 'sa', '14090');
INSERT INTO `t_base_pinyin` VALUES (271, 'sai', '14087');
INSERT INTO `t_base_pinyin` VALUES (272, 'san', '14083');
INSERT INTO `t_base_pinyin` VALUES (273, 'sang', '13917');
INSERT INTO `t_base_pinyin` VALUES (274, 'sao', '13914');
INSERT INTO `t_base_pinyin` VALUES (275, 'se', '13910');
INSERT INTO `t_base_pinyin` VALUES (276, 'sen', '13907');
INSERT INTO `t_base_pinyin` VALUES (277, 'seng', '13906');
INSERT INTO `t_base_pinyin` VALUES (278, 'sha', '13905');
INSERT INTO `t_base_pinyin` VALUES (279, 'shai', '13896');
INSERT INTO `t_base_pinyin` VALUES (280, 'shan', '13894');
INSERT INTO `t_base_pinyin` VALUES (281, 'shang', '13878');
INSERT INTO `t_base_pinyin` VALUES (282, 'shao', '13870');
INSERT INTO `t_base_pinyin` VALUES (283, 'she', '13859');
INSERT INTO `t_base_pinyin` VALUES (284, 'shen', '13847');
INSERT INTO `t_base_pinyin` VALUES (285, 'sheng', '13831');
INSERT INTO `t_base_pinyin` VALUES (286, 'shi', '13658');
INSERT INTO `t_base_pinyin` VALUES (287, 'shou', '13611');
INSERT INTO `t_base_pinyin` VALUES (288, 'shu', '13601');
INSERT INTO `t_base_pinyin` VALUES (289, 'shua', '13406');
INSERT INTO `t_base_pinyin` VALUES (290, 'shuai', '13404');
INSERT INTO `t_base_pinyin` VALUES (291, 'shuan', '13400');
INSERT INTO `t_base_pinyin` VALUES (292, 'shuang', '13398');
INSERT INTO `t_base_pinyin` VALUES (293, 'shui', '13395');
INSERT INTO `t_base_pinyin` VALUES (294, 'shun', '13391');
INSERT INTO `t_base_pinyin` VALUES (295, 'shuo', '13387');
INSERT INTO `t_base_pinyin` VALUES (296, 'si', '13383');
INSERT INTO `t_base_pinyin` VALUES (297, 'song', '13367');
INSERT INTO `t_base_pinyin` VALUES (298, 'sou', '13359');
INSERT INTO `t_base_pinyin` VALUES (299, 'su', '13356');
INSERT INTO `t_base_pinyin` VALUES (300, 'suan', '13343');
INSERT INTO `t_base_pinyin` VALUES (301, 'sui', '13340');
INSERT INTO `t_base_pinyin` VALUES (302, 'sun', '13329');
INSERT INTO `t_base_pinyin` VALUES (303, 'suo', '13326');
INSERT INTO `t_base_pinyin` VALUES (304, 'ta', '13318');
INSERT INTO `t_base_pinyin` VALUES (305, 'tai', '13147');
INSERT INTO `t_base_pinyin` VALUES (306, 'tan', '13138');
INSERT INTO `t_base_pinyin` VALUES (307, 'tang', '13120');
INSERT INTO `t_base_pinyin` VALUES (308, 'tao', '13107');
INSERT INTO `t_base_pinyin` VALUES (309, 'te', '13096');
INSERT INTO `t_base_pinyin` VALUES (310, 'teng', '13095');
INSERT INTO `t_base_pinyin` VALUES (311, 'ti', '13091');
INSERT INTO `t_base_pinyin` VALUES (312, 'tian', '13076');
INSERT INTO `t_base_pinyin` VALUES (313, 'tiao', '13068');
INSERT INTO `t_base_pinyin` VALUES (314, 'tie', '13063');
INSERT INTO `t_base_pinyin` VALUES (315, 'ting', '13060');
INSERT INTO `t_base_pinyin` VALUES (316, 'tong', '12888');
INSERT INTO `t_base_pinyin` VALUES (317, 'tou', '12875');
INSERT INTO `t_base_pinyin` VALUES (318, 'tu', '12871');
INSERT INTO `t_base_pinyin` VALUES (319, 'tuan', '12860');
INSERT INTO `t_base_pinyin` VALUES (320, 'tui', '12858');
INSERT INTO `t_base_pinyin` VALUES (321, 'tun', '12852');
INSERT INTO `t_base_pinyin` VALUES (322, 'tuo', '12849');
INSERT INTO `t_base_pinyin` VALUES (323, 'wa', '12838');
INSERT INTO `t_base_pinyin` VALUES (324, 'wai', '12831');
INSERT INTO `t_base_pinyin` VALUES (325, 'wan', '12829');
INSERT INTO `t_base_pinyin` VALUES (326, 'wang', '12812');
INSERT INTO `t_base_pinyin` VALUES (327, 'wei', '12802');
INSERT INTO `t_base_pinyin` VALUES (328, 'wen', '12607');
INSERT INTO `t_base_pinyin` VALUES (329, 'weng', '12597');
INSERT INTO `t_base_pinyin` VALUES (330, 'wo', '12594');
INSERT INTO `t_base_pinyin` VALUES (331, 'wu', '12585');
INSERT INTO `t_base_pinyin` VALUES (332, 'xi', '12556');
INSERT INTO `t_base_pinyin` VALUES (333, 'xia', '12359');
INSERT INTO `t_base_pinyin` VALUES (334, 'xian', '12346');
INSERT INTO `t_base_pinyin` VALUES (335, 'xiang', '12320');
INSERT INTO `t_base_pinyin` VALUES (336, 'xiao', '12300');
INSERT INTO `t_base_pinyin` VALUES (337, 'xie', '12120');
INSERT INTO `t_base_pinyin` VALUES (338, 'xin', '12099');
INSERT INTO `t_base_pinyin` VALUES (339, 'xing', '12089');
INSERT INTO `t_base_pinyin` VALUES (340, 'xiong', '12074');
INSERT INTO `t_base_pinyin` VALUES (341, 'xiu', '12067');
INSERT INTO `t_base_pinyin` VALUES (342, 'xu', '12058');
INSERT INTO `t_base_pinyin` VALUES (343, 'xuan', '12039');
INSERT INTO `t_base_pinyin` VALUES (344, 'xue', '11867');
INSERT INTO `t_base_pinyin` VALUES (345, 'xun', '11861');
INSERT INTO `t_base_pinyin` VALUES (346, 'ya', '11847');
INSERT INTO `t_base_pinyin` VALUES (347, 'yan', '11831');
INSERT INTO `t_base_pinyin` VALUES (348, 'yang', '11798');
INSERT INTO `t_base_pinyin` VALUES (349, 'yao', '11781');
INSERT INTO `t_base_pinyin` VALUES (350, 'ye', '11604');
INSERT INTO `t_base_pinyin` VALUES (351, 'yi', '11589');
INSERT INTO `t_base_pinyin` VALUES (352, 'yin', '11536');
INSERT INTO `t_base_pinyin` VALUES (353, 'ying', '11358');
INSERT INTO `t_base_pinyin` VALUES (354, 'yo', '11340');
INSERT INTO `t_base_pinyin` VALUES (355, 'yong', '11339');
INSERT INTO `t_base_pinyin` VALUES (356, 'you', '11324');
INSERT INTO `t_base_pinyin` VALUES (357, 'yu', '11303');
INSERT INTO `t_base_pinyin` VALUES (358, 'yuan', '11097');
INSERT INTO `t_base_pinyin` VALUES (359, 'yue', '11077');
INSERT INTO `t_base_pinyin` VALUES (360, 'yun', '11067');
INSERT INTO `t_base_pinyin` VALUES (361, 'za', '11055');
INSERT INTO `t_base_pinyin` VALUES (362, 'zai', '11052');
INSERT INTO `t_base_pinyin` VALUES (363, 'zan', '11045');
INSERT INTO `t_base_pinyin` VALUES (364, 'zang', '11041');
INSERT INTO `t_base_pinyin` VALUES (365, 'zao', '11038');
INSERT INTO `t_base_pinyin` VALUES (366, 'ze', '11024');
INSERT INTO `t_base_pinyin` VALUES (367, 'zei', '11020');
INSERT INTO `t_base_pinyin` VALUES (368, 'zen', '11019');
INSERT INTO `t_base_pinyin` VALUES (369, 'zeng', '11018');
INSERT INTO `t_base_pinyin` VALUES (370, 'zha', '11014');
INSERT INTO `t_base_pinyin` VALUES (371, 'zhai', '10838');
INSERT INTO `t_base_pinyin` VALUES (372, 'zhan', '10832');
INSERT INTO `t_base_pinyin` VALUES (373, 'zhang', '10815');
INSERT INTO `t_base_pinyin` VALUES (374, 'zhao', '10800');
INSERT INTO `t_base_pinyin` VALUES (375, 'zhe', '10790');
INSERT INTO `t_base_pinyin` VALUES (376, 'zhen', '10780');
INSERT INTO `t_base_pinyin` VALUES (377, 'zheng', '10764');
INSERT INTO `t_base_pinyin` VALUES (378, 'zhi', '10587');
INSERT INTO `t_base_pinyin` VALUES (379, 'zhong', '10544');
INSERT INTO `t_base_pinyin` VALUES (380, 'zhou', '10533');
INSERT INTO `t_base_pinyin` VALUES (381, 'zhu', '10519');
INSERT INTO `t_base_pinyin` VALUES (382, 'zhua', '10331');
INSERT INTO `t_base_pinyin` VALUES (383, 'zhuai', '10329');
INSERT INTO `t_base_pinyin` VALUES (384, 'zhuan', '10328');
INSERT INTO `t_base_pinyin` VALUES (385, 'zhuang', '10322');
INSERT INTO `t_base_pinyin` VALUES (386, 'zhui', '10315');
INSERT INTO `t_base_pinyin` VALUES (387, 'zhun', '10309');
INSERT INTO `t_base_pinyin` VALUES (388, 'zhuo', '10307');
INSERT INTO `t_base_pinyin` VALUES (389, 'zi', '10296');
INSERT INTO `t_base_pinyin` VALUES (390, 'zong', '10281');
INSERT INTO `t_base_pinyin` VALUES (391, 'zou', '10274');
INSERT INTO `t_base_pinyin` VALUES (392, 'zu', '10270');
INSERT INTO `t_base_pinyin` VALUES (393, 'zuan', '10262');
INSERT INTO `t_base_pinyin` VALUES (394, 'zui', '10260');
INSERT INTO `t_base_pinyin` VALUES (395, 'zun', '10256');
INSERT INTO `t_base_pinyin` VALUES (396, 'zuo', '10254');

SET FOREIGN_KEY_CHECKS = 1;

2.创建函数

转换首字母

CREATE DEFINER=`root`@`localhost` FUNCTION `fristPinyin`(P_NAME VARCHAR(255)) RETURNS varchar(255) CHARSET utf8
BEGIN
    DECLARE V_RETURN VARCHAR(255);
    SET V_RETURN = ELT(INTERVAL(CONV(HEX(left(CONVERT(P_NAME USING gbk),1)),16,10), 
        0xB0A1,0xB0C5,0xB2C1,0xB4EE,0xB6EA,0xB7A2,0xB8C1,0xB9FE,0xBBF7, 
        0xBFA6,0xC0AC,0xC2E8,0xC4C3,0xC5B6,0xC5BE,0xC6DA,0xC8BB,
        0xC8F6,0xCBFA,0xCDDA,0xCEF4,0xD1B9,0xD4D1),    
    'A','B','C','D','E','F','G','H','J','K','L','M','N','O','P','Q','R','S','T','W','X','Y','Z');
    RETURN V_RETURN;
END

转换拼音

CREATE DEFINER=`root`@`localhost` FUNCTION `to_pinyin`(NAME VARCHAR(255) CHARSET gbk) RETURNS varchar(255) CHARSET gbk
BEGIN
    DECLARE mycode INT;
    DECLARE tmp_lcode VARCHAR(2) CHARSET gbk;
    DECLARE lcode INT;
    DECLARE tmp_rcode VARCHAR(2) CHARSET gbk;
    DECLARE rcode INT;

    DECLARE mypy VARCHAR(255) CHARSET gbk DEFAULT '';
    DECLARE lp INT;

    SET mycode = 0;
    SET lp = 1;

    SET NAME = HEX(NAME);

    WHILE lp < LENGTH(NAME) DO

        SET tmp_lcode = SUBSTRING(NAME, lp, 2);
        SET lcode = CAST(ASCII(UNHEX(tmp_lcode)) AS UNSIGNED);
        SET tmp_rcode = SUBSTRING(NAME, lp + 2, 2);
        SET rcode = CAST(ASCII(UNHEX(tmp_rcode)) AS UNSIGNED);
        IF lcode > 128 THEN
            SET mycode =65536 - lcode * 256 - rcode ;
            SELECT CONCAT(mypy,pin_yin_) INTO mypy FROM t_base_pinyin WHERE CODE_ >= ABS(mycode) ORDER BY CODE_ ASC LIMIT 1;
            SET lp = lp + 4;
        ELSE
            SET mypy = CONCAT(mypy,CHAR(CAST(ASCII(UNHEX(SUBSTRING(NAME, lp, 2))) AS UNSIGNED)));
            SET lp = lp + 2;
        END IF;
    END WHILE;
    RETURN LOWER(mypy);
END

3. 执行语句

UPDATE map_city SET initial = fristPinyin(city_name), pinyin = to_pinyin(city_name)

结果如图

Guess you like

Origin blog.csdn.net/yu1xue1fei/article/details/118298606