python运行mysql语句报错怎么解决
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇"python运行mysql语句报错怎么解决"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来
千家信息网最后更新 2026年11月04日python运行mysql语句报错怎么解决
这篇"python运行mysql语句报错怎么解决"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"python运行mysql语句报错怎么解决"文章吧。
一 python 运行mysql 语句报错
众所周知,python有转译机制 %s和%d都会被转译成字符串或数字,而sql的模糊查询也需要用到%,都进行模糊查询时,刚好查询条件还是个变量那就很尴尬了。
解决方法其实很简单,把需要进行模糊查询的字符串从sql中单独拎出来进行拼接就好
错误方式
shopId = "zbw_010002"'''select * from base_saleflows where shopId='{0}' and card_id is not NULL and standard_cls4 like "%湿巾%" '''.format(shopId)
发现 不对,这样的语句 mysql是运行不了的。
args='%湿巾%'shopId = "zbw_010002"mysql_sentence='''select a.shopId, a.sale_money,a.card_id ,a.standard_cls4 from base_saleflows a join base_vips b on a.card_id = b.card_id where a.shopId='{0}' and a.card_id is not NULL and a.standard_cls4 like '{1}' '''.format(shopId,args)print(mysql_sentence)
结果为
select * from base_saleflows a join base_vips b on a.card_id = b.card_id where a.shopId='zbw_010002' and a.card_id is not NULL and a.standard_cls4 like '%湿巾%'
二 字符串分组拼接
对 cls3列 按照流水号flow_no 进行 分组拼接字符串,拼接符号为'-'
# 分组拼接result = vipsaleflow_common.pivot_table(values='standard_cls3',index='flow_no',aggfunc=lambda x:x.str.cat(sep='-'))
三 每个月 、季度 新客数
编写函数
def new_count(saleflow, vip_col_name =['card_id'] , groupby_list=['year','month'], shopId=shopId):"""会员流水新客数"""first =saleflow.groupby(vip_col_name).oper_date.min().reset_index().\rename(columns={'oper_date':'oper_date_first'})first["month"] = first.oper_date_first.map(lambda x: x.month)first["year"] = first.oper_date_first.map(lambda x: x.year)lookup = {1: 1, 2:1,3:1,4:2,5:2, 6:2, 7:3,8:3,9:3,10:4, 11:4,12:4}first['season'] = first.oper_date_first.apply(lambda x: lookup[x.month])first['YearMonth'] = first.oper_date_first.map(lambda x: 100*x.year + x.month)monthly_new_count = first.groupby(groupby_list).card_id.nunique()\.reset_index().rename(columns={'card_id':'card_id'+'_nunique'})return monthly_new_count
应用 :按照 ( 年 ,月 , 分店号 ,湿巾类型)分组 求 每月 各个湿巾类型的新客数
## 每个月RESULT_month =new_count(saleflow, vip_col_name = ['branch_no','card_id','shijing_class'] ,groupby_list=['year','month','branch_no','shijing_class'], shopId=shopId)
应用 :按照 ( 年 ,季度 , 分店号 ,湿巾类型) 分组 求每个季度新客数
四 根据时间戳衍生 年 月 季度
saleflow['oper_date']=saleflow['oper_date'].astype(str) #字符串saleflow['oper_date'] = saleflow.oper_date.apply(lambda x:datetime.strptime(x, '%Y-%m-%d %H:%M:%S'))saleflow["month"] = saleflow.oper_date.map(lambda x: x.month)saleflow["year"] = saleflow.oper_date.map(lambda x: x.year)#https://www.it1352.com/584941.htmllookup = {1: 1, 2: 1,3: 1,4: 2, 5: 2, 6: 2, 7: 3,8: 3,9: 3,10: 4, 11: 4,12: 4}saleflow['Season'] = saleflow['oper_date'].apply(lambda x: lookup[x.month]) saleflow['YearMonth'] = saleflow['oper_date'].map(lambda x: 100*x.year + x.month)以上就是关于"python运行mysql语句报错怎么解决"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。
湿巾
语句
运行
内容
字符
字符串
分组
季度
查询
类型
分店
文章
流水
知识
篇文章
应用
不对
尴尬
众所周知
价值
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
上海睿民互联网科技有限公司
互联网科技公司的优势
互联网扶贫科技
深圳互联网科技公司
美国互联网科技
中国互联网科技发展
极限挑战互联网科技
上海致骋互联网科技
时间互联网络科技
青岛中康互联网医疗科技有限公司
宁波青枫互联网科技有限公司
以后互联网后是啥科技
互联网与医疗科技
如何创新互联网科技
互联网科技创新的路径
山东有哪些互联网科技公司
银行科技岗属于互联网吗
四川互联网展示科技馆设计
宁波跨境商互联网科技有限公司
网互联网络科技
中关村互联网科技集团
北京互联网科技有限公司
合肥互联网科技公司
齐家互联网科技
互联网科技logo设计
互联网公司会议桌创意科技软装饰
互联网企业和科技型企业
速维有品互联网信息科技(苏州)有限公司
民营互联网公司国防科技
互联网营销推广黑科技