Gilles Ganault <[EMAIL PROTECTED]> writes: > Hello > > I'm getting some unwanted result when SELECTing data from an SQLite > database: > > ====== > sql = 'SELECT id FROM master' > rows=list(cursor.execute(sql)) > for id in rows: > sql = 'SELECT COUNT(code) FROM companies WHERE code="%s"' % id[0] > result = list(cursor.execute(sql)) > print "Code=%s, number=%s" % (id[0],result[0]) > ====== > Code=0111Z, number=(47,) > ====== > > I expected to see "number=47". Why does Python return "(47,)"?
The result of an SQL SELECT is a sequence of tuples, where each item in the tuple is a value for a column as specified in the SELECT clause. SQLAlchemy represents this with a sequence of ResultProxy objects. When you convert a ResultProxy object to a string, it displays like a tuple. See the documentation for other ways of accessing various attributes of a ResultProxy object. -- \ “What is it that makes a complete stranger dive into an icy | `\ river to save a solid gold baby? Maybe we'll never know.” —Jack | _o__) Handey | Ben Finney -- http://mail.python.org/mailman/listinfo/python-list