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

Reply via email to