pymysql-我可以管理和更改查询结果的形式吗?

时间:2018-06-04 14:11:39

标签: python pymysql

我的问题很简单,我会向你解释我的意思。让我说我有一个像这样的随机代码:

sql_query="select first_name,age from random_table
cur.execute(sql_query)
results=cur.fetchall()
nested_tuple_list=[("genre","actor","tainies")]
for result in results:
    nested_tuple_list.append(result) 
nested_tuple_list=tuple(nested_tuple_list)
return(nested_tuple_list) 

这就是这样的结果:

name    | age
stef    | 15
stef    | 16
stef    | 17
stef    | 18
jim     | 15
jim     | 16
jim     | 17
pan     | 15
pan     | 16
pan     | 17
tom     | 15
tom     | 16
tom     | 17

我的功能类似于这个def名称(n)所以取决于我得到的我想让N个人拥有相同的first_name.Example n = 1:

name    | age               
stef    | 15
jim     | 15
pan     | 15
tom     | 15

name    | age               
stef    | 16
jim     | 16
pan     | 16
tom     | 16

我知道我可以通过sql来做,但我只是想知道我是否也可以用python来做。

1 个答案:

答案 0 :(得分:0)

使用limit,您可以应用offset来跳过记录

sql_query="select first_name,age from random_table limit ? offset ?"
cur.execute(sql_query, n, offset)

由于您将结果作为列表,因此可以执行以下操作:nested_tuple_list[:n]它将为您提供前n个元素。