Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql编辑器选择查询和python程序选择查询结果的区别_Python_Mysql_Select - Fatal编程技术网

mysql编辑器选择查询和python程序选择查询结果的区别

mysql编辑器选择查询和python程序选择查询结果的区别,python,mysql,select,Python,Mysql,Select,我正在执行一个从python程序到MySQL 5.2.39数据库的select查询。但是mysql编辑器select查询和python程序select查询的结果略有不同。数据库名为world,表名为wordcount,它有4列:id、author、word、count。 为什么这些L后缀出现在python中?有人能说出原因吗?甚至我也尝试在python代码中将整个长select查询表达式放在一行中,但仍然存在相同的问题。我将Eclipse与Pydev一起使用。下面是我的python代码: imp

我正在执行一个从python程序到MySQL 5.2.39数据库的select查询。但是mysql编辑器select查询和python程序select查询的结果略有不同。数据库名为world,表名为wordcount,它有4列:id、author、word、count。 为什么这些L后缀出现在python中?有人能说出原因吗?甚至我也尝试在python代码中将整个长select查询表达式放在一行中,但仍然存在相同的问题。我将Eclipse与Pydev一起使用。下面是我的python代码:

import MySQLdb as mdb
import sys
con = mdb.connect('localhost', 'root', '1234', 'world')
con.autocommit(True)
with con: 
    cur = con.cursor()
    cur.execute("select author,count(distinct word),count(distinct id) from \
        world.wordcount \
        group by author \
        having count(distinct word)<> count(distinct id) \
        order by author")

    rows = cur.fetchall()
    for row in rows:
        print row
MySQL编辑器的示例结果:

A  GONZ  LEZ|18|19
A  M  MORENO| 8| 9

它们是相同的值,即使表示形式不同。当
L
位于Python<3中的一个数字之后时,这意味着该数字是a,这是一种特定类型的数字。

好的,是的,我使用的是Python 2.7,现在希望这个长格式仅用于显示目的,或者它应用于数据,我的意思是如果我想将这个select查询结果插入到另一个输出中,比如合适的表,那么这两个列类型必须是long或integer才能工作?只要确保使用
str
而不是
repr
进行强制转换,您就可以了。
A  GONZ  LEZ|18|19
A  M  MORENO| 8| 9