当Python字符串碰上MySQL
发布时间:2022-03-23 03:51:50 所属栏目:MySql教程 来源:互联网
导读:学习的时候我喜欢对比,MySQL和Oracle比,Python和MySQL比,总能有一些收获,也有了新的理解。 今天整理这部分内容的时候,我发现Python和MySQL还是有很多相似之处。学习一门语言,一个数据库,字符串的处理都是一个相对重要的部分,所以我决定对比一下两者
学习的时候我喜欢对比,MySQL和Oracle比,Python和MySQL比,总能有一些收获,也有了新的理解。 今天整理这部分内容的时候,我发现Python和MySQL还是有很多相似之处。学习一门语言,一个数据库,字符串的处理都是一个相对重要的部分,所以我决定对比一下两者的差别。 下面的演示会一边Python,一边MySQL,所以按照这个思路来看就不会感觉突兀了。 转义字符 >>> print '"' " mysql> select '"'; +---+ | " | +---+ | " | +---+ >>> print ''' ' mysql> select '''; +---+ | ' | +---+ | ' | +---+ 字符串拼接 >>> x = 'hello' >>> y = 'tester' >>> z = x + y >>> print z hellotester set @x='hello'; set @y='tester'; mysql> select @x; +-------+ | @x | +-------+ | hello | mysql> select @y; +--------+ | @y | +--------+ | tester | +--------+ mysql> select concat(@x,@y); +---------------+ | concat(@x,@y) | +---------------+ | hellotester | +---------------+ 字符串复制 >>> print '#'*20 #################### mysql> select repeat('#',20); +----------------------+ | repeat('#',20) | +----------------------+ | #################### | +----------------------+ >>> print ' '*20 + 'end' end mysql> select space(20); +----------------------+ | space(20) | +----------------------+ | | +----------------------+ 字符串截取 >>> name = 'yangjianrong' >>> name[0] 'y' >>> name[-1] 'g' >>> name[1] 'a' >>> name[1:4] 'ang' >>> name[:] 'yangjianrong' >>> >>> name[1:4:2] 'ag' mysql> select concat(insert(@name,1,4,'yangjianrong'),insert(@alias,1,5,'jeanron100')) comm; +------------------------+ | comm | +------------------------+ | yangjianrongjeanron100 | +------------------------+ 字符串长度>>> ba 'this is a test bar' >>> len(ba) 18 mysql> select length(@ba); 字符串空格处理 >>> s = ' abc ' >>> s.lstrip() 'abc ' >>> s.rstrip() ' abc' >>> s.strip() 'abc' >>> mysql> set @s=' abc '; Query OK, 0 rows affected (0.00 sec) mysql> select ltrim(@s); +-----------+ | ltrim(@s) | +-----------+ | abc | +-----------+ 1 row in set (0.00 sec) mysql> select rtrim(@s); +-----------+ | rtrim(@s) | +-----------+ | abc | +-----------+ 1 row in set (0.00 sec) mysql> select trim(@s); +----------+ | trim(@s) | +----------+ | abc | +----------+ 1 row in set (0.00 sec) 字符串匹配 >>> l = ['a','b','c'] >>> ''.join(l) 'abc' >>> '*'.join(l) 'a*b*c' mysql> select concat_ws(',','a','b','c','d','e') comm; +-----------+ | comm | +-----------+ | a,b,c,d,e | +-----------+ >>> s = 'a b c d e ' >>> s.split(' ') ['a', 'b', 'c', 'd', 'e', ''] mysql> set @s='a b c d e '; Query OK, 0 rows affected (0.00 sec) mysql> select replace(@s,' ',','); +---------------------+ | replace(@s,' ',',') | +---------------------+ | a,b,c,d,e, | +---------------------+ 判断字符串开始匹配的字符 >>> s.startswith('aa') True mysql> SELECT LOCATE('aa',@s,1); +-------------------+ | LOCATE('aa',@s,1) | +-------------------+ | 1 | +-------------------+ (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |