首页 > 数据库 >python2.7 + MySQL 拼接SQL语句的技巧 (处理unicode,时间)

python2.7 + MySQL 拼接SQL语句的技巧 (处理unicode,时间)

时间:2023-02-06 17:37:32浏览次数:43  
标签:name SQL sql python2.7 unicode time MySQL table

背景

在 Python2.7 中,可以使用单引号,双引号,三引号表示字符串,当字符串的值为中文时,则会默认转换成unicode。但是在MYSQL中,使用SQL语句时,直接用unicode作为列的查询条件 (例如: name = '\uxxx\uyyy\uzzz\urrr')时,无法匹配到数据。

 

方案

首先,SQL使用三引号标识

sql = '''SELECT * FROM %s ;'''

 

cursor.execute(sql %(table_name,))

其次,时间处理, 使用 '%s'

t_format = '%Y-%m-%d %h:%i:%s'

 

sql = '''SELECT name, DATE_FORMAT(create_time, '%s') as time_stamp, %s FROM %s WHERE create_time BETWEEN '%s' AND '%s' ;'''

 

cursor.execute(sql %(t_format, table_name,begin_time, end_time))

最后,处理中文, 使用 name = '%s'

sql = '''SELECT name, type FROM table_name WHERE name = '%s';'''

 

cursor.execute(sql %(name,))

 

标签:name,SQL,sql,python2.7,unicode,time,MySQL,table
From: https://www.cnblogs.com/atuotuo/p/17096066.html

相关文章

  • 设置MySQL log_bin重启失败的原因
    在设置log_bin二进制日志文件之后重启mysql服务显示滴启动失败然后查询资料发现没有配置server_id,配置server_id=1之后重启就OK了,servier_id的作用1、MySQL的同步的......
  • mysql concat函数的用法
    mysql中的这个函数非常强大,可以对查出的参数进行拼接,其实这个方法在java中也有api可以进行调用。那么什么时候进行使用呢?例如,你老大叫你做一个数据库的数据采集,需要整理成......
  • mysql 日期和时间戳的转换
    (18条消息)MySQL日期和时间戳的转换|以及DATE_FORMAT()用法_慌途L的博客-CSDN博客_date_format能转换时间戳吗一小时的时间戳是2*3600*1000,这是13位的时间戳的用法,如......
  • MySQL 8.0 新特性之 Clone Plugin
    转载:ClonePlugin......
  • DW集训营数据库Mysql梳理(二)
    导入示例数据库首先创建并打开数据库,接着在数据库下执行sql或者将sql语句复制执行sql语句。SQL是什么?MySQL是什么?SQL即结构化查询语言(StructuredQueryLanguage),是一种特......
  • DW集训营数据库Mysql梳理(四)
    MySQL基础–表联结学习内容1.MySQL别名别名除了允许用于列名和计算字段外,SQL还允许给表名起别名,好处在于:(1)缩短SQL语句;(2)允许在一条SELECT语句中多次使用相同的表。为......
  • MySQL 查看数据库中每个表占用的空间大小
    1、进去指定schema数据库(存放了其他的数据库的信息) mysql>useinformation_schema;Databasechanged2、查询所有数据的大小mysql>selectconcat(round(sum(DATA_LEN......
  • MYSQL更改引擎为InnoDB
    MYSQL更改引擎为InnoDB因为MYSQL默认是MyISAM引擎,但是MyISAM引擎不支持事务和外键,所以我们需要设置默认为InnoDB引擎。打开my.ini文件(安装路径根目录下)文件划到最下面......
  • MySQL(九)插入、更新和删除
    常用的SQL语句,除了select用于查询,还有insert、update、delete等。 一、insertinsert:用来插入(或添加)行到数据库中,常见方式有以下几种:①插入完整的行;②插入行的一部分;③插入......
  • MySQL(十一)视图及存储过程
    一、视图视图是虚拟的表,它只包含使用时动态检索数据的查询。1、使用视图的好处①重用SQL语句;②简化复杂的SQL操作(可以方便的重用它而不必知道它的基本查询细节);③使用表的组......