使用第1个元素的值获取结果集的第2个和第3个元素的值

时间:2014-11-18 03:05:58

标签: python postgresql

acur.execute("Select id,firstname,lastname from tbl_emp")
tk = acur.fetchall()

结果集是:

tk = [(1,'a','b'),(2,'c','d'),(3,'e','f')]

如何使用第一个元素的值搜索此结果集?

说我用2搜索,它会产生c和d。

2 个答案:

答案 0 :(得分:1)

如果您只是通过元组查看:

>>> def search(_list, _value):
...     for item in _list:
...             if item[0] == _value:
...                     return item[1], item[2]
... 
>>> search(tk, 2)
('c', 'd')
>>> search(tk, 3)
('e', 'f')
>>> search(tk, 4)
>>> 

答案 1 :(得分:0)

为什么不首先过滤它而不是获取所有记录:

acur.execute("""
    SELECT 
        firstname, 
        lastname 
    FROM 
        tbl_emp 
    WHERE 
        id = %s""", (2, ))
firstname, lastname = acur.fetchone()