温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

当Python字符串遇上MySQL

发布时间:2020-08-16 21:08:34 阅读:259 作者:DicksonJYL560101 栏目:MySQL数据库
亿速云mysql数据库,读写分离,安全稳定,弹性扩容,低至0.3元/天!! 点击查看>>

    学习的时候我喜欢对比,MySQL和Oracle比,Python和MySQL比,总能有一些收获,也有了新的理解。

    今天整理这部分内容的时候,我发现Python和MySQL还是有很多相似之处。学习一门语言,一个数据库,字符串的处理都是一个相对重要的部分,所以我决定对比一下两者的差别。

    下面的演示会一边Python,一边MySQL,所以按照这个思路来看就不会感觉突兀了。

  转义字符

   
	>>> print '\\'\mysql> select '\\';+---+| \ |+---+| \ |+---+>>> print '\"'"mysql> select '\"';+---+| " |+---+| " |+---+>>> print '\'''mysql> select '\'';+---+| ' |+---+| ' |+---+字符串拼接>>> x = 'hello'>>> y = 'tester'>>> z = x + y>>> print zhellotesterset @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'                    endmysql> 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> set @name:='yangjianrong';mysql> select left(@name,1);         +---------------+| left(@name,1) |+---------------+| y             |+---------------+mysql> select right(@name,1);+----------------+| right(@name,1) |+----------------+| g              |+----------------+mysql> select substring(@name,2,3);+----------------------+| substring(@name,2,3) |+----------------------+| ang                  |+----------------------+mysql> select substring(@name,1);+--------------------+| substring(@name,1) |+--------------------+| yangjianrong       |+--------------------+或者使用midmysql> select mid(@name,2,3);         +----------------+| mid(@name,2,3) |+----------------+| ang            |+----------------+mysql>  select mid(@name,1);         +--------------+| mid(@name,1) |+--------------+| yangjianrong |+--------------+>>> name'yangjianrong'>>> print '%s' %nameyangjianrong字符串格式化,匹配>>> '{name},{alias}'.format(name='yangjianrong',alias='jeanron100')    'yangjianrong,jeanron100'>>> mysql>  select concat(insert(@name,1,4,'yangjianrong'),insert(@alias,1,5,'jeanron100')) comm;+------------------------+| comm                   |+------------------------+| yangjianrongjeanron100 |+------------------------+字符串长度>>> ba'this is a test bar'>>> len(ba)18mysql> 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 = 'aabbcc'>>> s.replace('aa','tt')'ttbbcc'mysql> set @s='aabbcc';Query OK, 0 rows affected (0.00 sec)mysql> select replace(@s,'aa','tt');+-----------------------+| replace(@s,'aa','tt') |+-----------------------+| ttbbcc                |+-----------------------+ 字符串编码>>> s.encode('utf8')'aabbcc'mysql> select  convert(@s using utf8);+------------------------+| convert(@s using utf8) |+------------------------+| aabbcc                 |+------------------------+
    
	判断字符串开始匹配的字符>>> s.startswith('aa')Truemysql> SELECT LOCATE('aa',@s,1);  +-------------------+| LOCATE('aa',@s,1) |+-------------------+|                 1 |+-------------------+

亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

原文链接:http://blog.itpub.net/29829936/viewspace-2149011/

AI

开发者交流群×