需要 Python 3.7 中的 Mysql 查询以从具有列 (table_no, is_new) 的表中选择记录

Posted

技术标签:

【中文标题】需要 Python 3.7 中的 Mysql 查询以从具有列 (table_no, is_new) 的表中选择记录【英文标题】:Need Mysql query in python 3.7 to select records from table having column (table_no, is_new) 【发布时间】:2020-11-21 05:51:04 【问题描述】:

需要 Python 中的 mysql 查询从具有列 (table_no, is_new) 的表中选择记录。 table_no 是整数,is_new 是整数。所以让我们说如果我在表中有这样的数据

1. table_no: 1, is_new: 1
2. table_no: 1, is_new: 0
3. table_no: 2, is_new: 0
4. table_no: 2, is_new: 0
5. table_no: 3, is_new: 1
6. table_no: 4, is_new: 1
7. table_no: 4, is_new: 0

然后我需要选择查询来获取类似的数据

table_no: 1, is_new: 1, 
table_no: 2, is_new: 0, 
table_no: 3, is_new: 1, 
table_no: 4, is_new: 1

换句话说,如果我在 is_new 中有 0 和 1 对应于 table_no 1 那么我需要 table_no: 1, is_new: 1, 如果我在 is_new 中只有 0 对应于 table_no 1 那么我需要 table_no: 1, is_new: 0, 如果我在 is_new 中只有 1 对应于 table_no 1 那么我需要 table_no: 1, is_new: 1

【问题讨论】:

【参考方案1】:

使用max() 聚合和group by

select table_no,max(is_new) as is_new 
from tablename
group by table_no

【讨论】:

以上是关于需要 Python 3.7 中的 Mysql 查询以从具有列 (table_no, is_new) 的表中选择记录的主要内容,如果未能解决你的问题,请参考以下文章

加载 MySQLdb 模块时出错 - Windows 上的 Python 3.7

如何在python中的mysql查询中使用动态变量

读取指定页面中的超链接-Python 3.7

使用 python 3.8+(默认协议=5)时,pickle.load 在 python 3.7 中的(协议=4)对象上失败

Aosp代码repo时候需要python3.7,Ubuntu16.04下升级Python到3.7

python 3.7使用protobuf-3.17.3版本