我正在使用PyMySQL在我的MySQL数据库上运行一条SELECT语句,然后使用一些代码构建一个json输出,然后从lambda函数返回给我的移动应用程序.

问题是,在测试过程中,我发现正在构建的json的每一行数据都有重复项.

应该返回10行,但我有104行.

以下是代码的相关部分:

search_sql = f"SELECT * FROM Games"
cur.execute(search_sql)
rows = cur.fetchall()

result = []
for row in rows:
    d = {}
    for i, col in enumerate(cur.description):
        d[col[0]] = row[i]
        result.append(d)
return result

我还应该提到,我已经签入了数据库,并且肯定只有10个不同的行.

推荐答案

您正在做的是循环两次,按照您预期的频率调用Result.append(D)10倍.把它缩进一个.

Mysql相关问答推荐

慢查询日志(log)甚至包括快速查询,因为它包括等待锁定所花费的时间

MySQL逻辑全部

含有子查询的MySQL函数出现语法错误

避免多个SQL查询的重构代码

global max_connections 和 spring.hikari.maximumPoolSize 有什么区别?

估计对大表进行分区所需的时间

为生日创建 MySQL 索引

java.lang.NullPointerException:无法调用com.proj.my.repository.OrderRepository.save(Object),因为this.orderRepository为空

MySQL 使用了错误的索引

仅当其他行相等时才 Select 行值

如何在更新语句中使用多个子字符串函数?

在 where 子句中左连接多个值

SQL从具有相同列的行中 Select 最后一行

在 postgresql 中实现 UML 类:创建类型与创建表

查询给出错误时的 mySQL Group_Concat 和 Case

为什么 ORDER BY 'id' 'desc' 不返回语法错误?

从一个带有连接的表中删除

你如何 OR 两个 LIKE 语句?

将 JavaScript 到日期对象转换为 MySQL 日期格式 (YYYY-MM-DD)

MySQL 1062 - 键 'PRIMARY' 的重复条目 '0'