Python中如何每次从MySQL数据库查询100条数据并指定字段

用 SQLAlchemy 连接了数据库,因为库里有很多数据,想每次取 100 条数据里面的 name,应该怎么写呢?
Python中如何每次从MySQL数据库查询100条数据并指定字段

4 回复

数据库里面有很多很多条数据


fetchmany()方法,配合SELECT指定字段,每次取100条。

import mysql.connector

# 建立连接
conn = mysql.connector.connect(
    host="localhost",
    user="your_username",
    password="your_password",
    database="your_database"
)
cursor = conn.cursor()

# 指定查询字段,用逗号分隔
query = "SELECT id, name, email FROM your_table"
cursor.execute(query)

while True:
    # 每次获取100条记录
    rows = cursor.fetchmany(100)
    if not rows:
        break
    
    # 处理这100条数据
    for row in rows:
        print(f"ID: {row[0]}, Name: {row[1]}, Email: {row[2]}")
        # 这里添加你的业务逻辑

cursor.close()
conn.close()

关键点:

  1. SELECT field1, field2, ... 明确指定需要的字段,避免SELECT *
  2. fetchmany(100) 每次从结果集中取100条
  3. 循环直到fetchmany()返回空列表

如果数据量大,考虑加WHERE条件或索引。用生成器可以更优雅地处理流式数据。

总结:用fetchmany加指定字段查询。

limit ?

方法一,关键词:yield_per
方法二,关键词:stream_results

https://oaoa.me/2018/08/cjki5kprp0007zejv8oo60yw5/

回到顶部