python-2.7 - Python 2.7 我的日期格式有问题

标签 python-2.7

我在查询结束时遇到了日期问题

#!/usr/bin/env python
# -*- coding: utf-8 -*- 

##chart excel advanced
import mysql.connector
import arrow
from xlsxwriter.workbook import Workbook
##/home/andrews/Downloads/GRAILS/tarjetasadicionales/web-app/tempFiles/
workbook = Workbook('output2.xlsx')
worksheet = workbook.add_worksheet()
##ADD A CHART SHEET
chartsheet = workbook.add_chartsheet()
conn = mysql.connector.connect(
         user='root',
         password='root',
         host='127.0.0.1',
         database='adicionales')


cur = conn.cursor()

##hire_start = arrow.get('2017-06-14 00:00:00')
##hire_start.format('YYYY-MM-DD HH:mm:ss ZZ')
##hire_end = arrow.get('2017-06-14 23:59:59')
##hire_end.format('YYYY-MM-DD HH:mm:ss ZZ')

query = ("""select
concat(substr(c.fecha_gestion, 9, 2),'/',substr(c.fecha_gestion, 6, 
2),'/',substr(c.fecha_gestion, 1, 4)) as 'Fecha Gestión'
, case substr(c.fecha_gestion, 6, 2)
when '01' then 'ENERO'
when '02' then 'FEBRERO'
when '03' then 'MARZO'
when '04' then 'ABRIL'
when '05' then 'MAYO'
when '06' then 'JUNIO'
when '07' then 'JULIO'
when '08' then 'AGOSTO'
when '09' then 'SEPTIEMBRE'
when '10' then 'OCTUBRE'
when '11' then 'NOVIEMBRE'
when '12' then 'DICIEMBRE'
else 'NO APLICA'
end as 'Mes Gestión'
, substr(c.fecha_gestion, 1, 4) as 'Año Gestión'
, concat(substr(c.fecha_gestion, 9, 2),'/',substr(c.fecha_gestion, 6, 
2),'/',substr(c.fecha_gestion, 1, 4)) as 'Fecha Consolidado'
, 'PLUS WIRELESS' as 'Nombre call center'
, upper(c.nombre_vendedor) as 'Usuario'
, 'CEDULA' as 'Tipo_Id'
, a.cedula as 'Id_adicional'
, upper(a.nacionalidad) as 'Nacionalidad'
, upper(a.primer_apellido) as 'Primer_apellido'
, upper(a.segundo_apellido) as 'Segundo_apellido'
, upper(a.primer_nombre) as 'Primer_nombre'
, upper(a.segundo_nombre) as 'Segundo_nombre'
, upper(a.nombre_tarjeta) as 'Nombre_tarjeta'
, a.fecha_nacimiento as 'Fecha_nacimiento'
, upper(a.sexo) as 'Sexo'
, upper(a.estado_civil) as 'Estado_civil'
, upper(a.parentesco) as 'Parentesco'
, upper(a.observaciones) as 'Observaciones'
, a.cupo_otorgado as 'Cupo'
, c.cuenta as 'Cuenta_titular'
, c.identificacion as 'Id_titular'
, upper(c.producto) as 'Producto'
, upper(concat(c.apellidos,' ',c.nombres)) as 'Nombre_completo_titular'
, upper(c.provincia_trab) as 'Provincia_trabajo'
, upper(c.ciudad_trab) as 'Ciudad_trabajo'
, upper(c.calle_principal_trab) as 'Avenida/Calle principal_trabajo'
, upper(c.numeracion_trab) as 'Numeración_trabajo'
, upper(c.calle_transversal_trab) as 'Calle_transversal_trabajo'
, upper(c.sector_trab) as 'Sector/Barrio_trabajo'
, upper(c.tipo_trab) as 'Casa_departamento_trabajo'
, upper(c.referencia_trab) as 'Referencia_trabajo'
, upper(concat(calle_principal_trab, ' ', numeracion_trab, ' ', 
calle_transversal_trab, ' ', sector_trab, ' ', referencia_trab)) as 
'Información_concatenada_trabajo'
, c.caracteres_trab as 'Caracteres_trabajo'
, upper(c.provincia_domic) as 'Provincia_domicilio'
, upper(c.ciudad_domic) as 'Ciudad_domicilio'
, upper(c.calle_principal_domic) as 'Avenida/Calle principal_domicilio'
, upper(c.numeracion_domic) as 'Numeración_domicilio'
, upper(c.calle_transversal_domic) as 'Calle_transversal_domicilio'
, upper(c.sector_domic) as 'Sector/Barrio_domicilio'
, upper(c.tipo_vivienda) as 'Casa_departamento_domicilio'
, upper(c.referencia_domic) as 'Referencia_domicilio'
, upper(concat(calle_principal_domic, ' ', numeracion_domic, ' ', 
calle_transversal_domic, ' ', sector_domic, ' ', referencia_domic)) as 
'Información_concatenada_trabajo'
, c.caracteres_dom as 'Caracteres_domicilio'
, upper(c.entrega) as 'Trabajo/Domicilio'
, upper(c.nombre_contacto) as 'Persona de contacto'
, upper(c.rango_visita) as 'Rango de visita'
, c.celular_contacto as 'Celular'
, c.telefono_trab_contacto as 'Telefono_trabajo'
, c.telefono_dom_contacto as 'Telefono_casa'
, c.estado_cta_digital as 'EmisionEstadoCtaDigital'
from clientes c, adicional a
where c.subestado_gestion_id in (select id from subestado where type = 
'Exitoso')
and c.id = a.clientes_id
and c.fecha_gestion between '2017-05-04 00:00:00' and '2017-05-08 
23:59:59'
""")

这里我遇到日期格式“2017-05-04 00:00:00”和“2017-05-08 23:59:59”的问题 删除这行代码查询有效,我可以在“2017-05-04 00:00:00”和“2017-05-08 23:59:59”之间看到 excel 文件和 c.fecha_gestion

cur.execute(query)
results = cur.fetchall()
print(results)

chart = workbook.add_chart({'type': 'line'})
chartsheet.set_chart(chart)

for i, row in enumerate(results):
    for j, value in enumerate(row):
       worksheet.write(i, j, row[j])

# Insert the chart into the worksheet IN D1.
worksheet.insert_chart('Z1', chart)
##SHEET NUM AND THE VALUES TO COUNT FORM        
chart.add_series({'values': '=Sheet1!$B$1:$B$59649'})
workbook.close()

这是数据库的链接

THIS IS THE LINK OF THE DATABASE

最佳答案

我运行了以下查询:

SELECT c.fecha_gestion FROM clientes c where c.id in (select a.clientes_id from adicional a) order by c.fecha_gestion asc 

c.fecha_gestion 的日期范围是 2017-05-12 16:37:182017-06-13 09:49:00

这些都大于 2017-05-08 23:59:59 在您的 between 语句中指定的最大日期。

c.id = a.clientes_id 似乎在您查询的日期范围内限制了 clientes 中的记录。

编辑

以下是针对数据转储运行查询的结果,没有 between 子句,将列 c.fecha_gestion 添加到所选列,并使用 order通过 c.fecha_gestion asc

查看 c.fecha_gestion 的最小日期值,2017-05-12 16:37:18。因此,对于此查询,c.fecha_gestion 中没有值在 2017-05-04 00:00:002017-05-08 之间的行23:59:59,这就是为什么在 between 条件下没有结果:

query and result grid

关于python-2.7 - Python 2.7 我的日期格式有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44687443/

相关文章:

python用正斜杠和反斜杠存储路径名

python-2.7 - 尝试在python中播放AudioSegment时权限被拒绝

python - 什么时候在 python 中使用单例?

c++ - 如何使用 C++ 的字节码优化来初始化嵌入式 Python 解释器?

django - allauth with crispyform : signup not working

python-2.7 - 如何使用 pytest 和 python 测试控制台打印?

python - PyUSB 值错误 : No backend available

python - 将数据框的第三列放在下一行

python 文件输入查找和替换行

python - pip 卸载失败并显示 "owned by OS"- 即使在 sudo 下