当Python字符串遇上MySQL
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,学习的时候我喜欢对比,MySQL和Oracle比,Python和MySQL比,总能有一些收获,也有了新的理解。今天整理这部分内容的时候,我发现Python和MySQL还是有很多相似之处。学习一门语言,
千家信息网最后更新 2025年02月02日当Python字符串遇上MySQL
学习的时候我喜欢对比,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 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> 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 |
+--------------------+
或者使用mid
mysql> select mid(@name,2,3);
+----------------+
| mid(@name,2,3) |
+----------------+
| ang |
+----------------+
mysql> select mid(@name,1);
+--------------+
| mid(@name,1) |
+--------------+
| yangjianrong |
+--------------+
>>> name
'yangjianrong'
>>> print '%s' %name
yangjianrong
字符串格式化,匹配
>>> '{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)
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 = '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')
True
mysql> SELECT LOCATE('aa',@s,1);
+-------------------+
| LOCATE('aa',@s,1) |
+-------------------+
| 1 |
+-------------------+
字符
字符串
时候
处理
学习
相似
重要
内容
差别
思路
总能
感觉
我喜欢
数据
数据库
格式
演示会
空格
编码
语言
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
关于网络安全与执法职位的疑问
值得相信的esg数据库
山东诚兑互联网科技有限公司
教育咨询网络技术需要资质
ipad上建立自己的数据库
网易服务器怎么建设
数据库表条数
上海云服务器安装
电商系统软件开发价钱
服务器怎么验证正版
我的世界梦世界服务器怎么建领地
图书馆网络技术部工作计划
西藏算力服务器租赁多少钱
两列表格删除重复数据库
互联网课外学术科技竞赛
网络安全领域内的资格认证
奥的斯电梯服务器操作步骤
计算机网络安全方案
政治网络安全题目
数据库和物理同步
警察网络安全管理岗位是警察
个人笔记软件开发
网络安全法心得休会
网络技术专利排行
数据库怎么清缓存
广航数据库技术
通讯网络技术学校排名
数据库软件设计流程图
数据库怎么看函数依赖关系
iis服务器证书过期