在python3.7中使用group by发送mySql查询时没有结果
我在python3.7(mysql连接器==2.2.9)中查询我的mysql表时遇到了一个问题。 这是我的密码:在python3.7中使用group by发送mySql查询时没有结果,python,mysql,python-3.x,group-by,mysql-connector,Python,Mysql,Python 3.x,Group By,Mysql Connector,我在python3.7(mysql连接器==2.2.9)中查询我的mysql表时遇到了一个问题。 这是我的密码: import mysql.connector conn = mysql.connector.connect( host="127.0.0.1", user="jeremy", password="password", database="facebook_messenger" ) cursor = conn.cursor() query
import mysql.connector
conn = mysql.connector.connect(
host="127.0.0.1",
user="jeremy",
password="password",
database="facebook_messenger"
)
cursor = conn.cursor()
query = "SELECT title, uuid, sender, MIN(sent_at), MAX(sent_at) FROM messages GROUP BY title, uuid, sender;"
#query = "SELECT title, uuid, sender FROM messages;"
cursor.execute(query)
results = cursor.fetchall()
print(results)
我没有任何错误,但结果是[]
这很奇怪,因为如果我在mysql中运行相同的查询,它就会工作
另外,如果我运行一个简单的select(正如我的代码中所注释的),我会得到结果
那么,我的假设是,分组不起作用
有什么想法吗 尝试为聚合
MIN
和MAX
列提供别名,而不是保留为表达式。另外,在您的简单查询中,是否可以添加sent\u at
列以接收结果?是的,可以通过简单查询,例如选择标题、uuid、发件人、sent\u at FROM messages代码>工作。我试过使用别名:query=“从消息组中按标题、uuid、发件人选择标题、uuid、发件人、最小(%s)、最大(%s)”
adr=(“发送地址”、“发送地址”)
光标。执行(查询、发件人)
我仍然没有结果。我是指使用AS
运算符的SQL别名:…min(发送地址)AS min(发送地址)AS min\u发送地址,max(发送地址)当max_发送到…
时,我发现了问题所在。在Python中,我需要添加where sender''和title''
where,而在mysql客户端中,我不需要这些来获得结果。谢谢!:)非常奇怪!我不明白这是为什么。确保使用最新版本的模块。甚至向包作者报告这样的错误项目。或者考虑<代码> PYYYSQL < /代码>。