将来自数据库查询的数据制成表格

Tabulating data coming from a DB query

我觉得我不是在搜索正确的术语,就是我没有完全理解 'constructed' 在 Python 中的数据与 SAS 或 [=25 相比的差异=].

我已将 PyCharm Pro 连接到 Impala 数据库。我可以查询 table 并且它 returns 的格式为:

('Ford', 'Focus 2dr', 'column3data', 'column4data', 'etc')

我现在限制 SQL 查询,只抓取前两列,然后将其打印到表格中。问题是,制表所做的只是将整行放入一个单元格中。

print(tabulate([records], headers=["make", "model"]))

我知道为什么我只打印 [records],因为它只是一个长字符串,但我如何才能制表以正确处理数据并将记录拆分到各自的列中?

您必须将该集合拆分为长度与列数相匹配的块。

例如:

from tabulate import tabulate

your_sample_query = ('Ford', 'Focus 2dr', 'column3data', 'column4data', 'etc')
chop_it = [your_sample_query[i:i+2] for i in range(0, len(your_sample_query), 2)]
print(tabulate(chop_it, headers=["make", "model"], tablefmt="sql"))

这输出:

make         model
-----------  -----------
Ford         Focus 2dr
column3data  column4data
etc