首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Vertica数据库中获取列名(标题)?

从Vertica数据库中获取列名(标题)?
EN

Stack Overflow用户
提问于 2016-10-17 07:08:41
回答 2查看 1.9K关注 0票数 3

当通过sql查询从python中的vertica数据库中提取数据时,我试图提取列名。我正在使用vertica-python 0.6.8。到目前为止,我正在创建第一行词典,但我想知道是否有更简单的方法。我现在就是这样做的:

代码语言:javascript
复制
import vertica_python
import csv
import sys
import ssl
import psycopg2

conn_info = {'host': '****',
             'port': 5433,
             'user': '****',
             'password': '****',
             'database': '****',
             # 10 minutes timeout on queries
             'read_timeout': 600,
             # default throw error on invalid UTF-8 results
             'unicode_error': 'strict',
             # SSL is disabled by default
             'ssl': False}

connection = vertica_python.connect(**conn_info)
cur = connection.cursor('dict')
str = "SELECT * FROM something WHERE something_happens LIMIT 1"
cur.execute(str)
temp = cur.fetchall()
ColumnList = []
for column in temp[0]:
    ColumnList.append(column)

干杯

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-10-17 17:02:04

有两种方式:

首先,如果您想要列列表,只需访问dict的键,这基本上与您所拥有的类似,但更短:

代码语言:javascript
复制
ColumnList = temp[0].keys()

其次,您可以访问游标的字段列表,我认为这是您真正想要的:

代码语言:javascript
复制
ColumnList = [d.name for d in cur.description]

第二个更好,因为即使结果是空的,它也会让您看到列。

票数 3
EN

Stack Overflow用户

发布于 2016-10-17 10:39:11

如果我没有错的话,你是在问每一栏的标题。您可以通过使用“类hp_vertica_client.cursor”的数据描述符来做到这一点。它可以在这里找到:client/cursor.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40080375

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档