6

这是我的python代码:

 cx=sqlalchemy.create_engine(u"mysql://username:password@ipaddress/database?charset=utf8")

 metadata=sqlalchemy.MetaData(cx)
 orm_obj=sqlalchemy.Table(u'I_POI',metadata,autoload=True)


 sql=orm_obj.select(u'poi_id,poi_name').where(u'poi_id>1 and poi_id>0').limit(3).offset(0)

 resultz=sql.execute()
 for i in resultz:
     print i

[DB] I_POI表:poi_id,poi_name,poi_data1,poi_data2......poi_data10

我用现有的数据库来做,但是“select()”是行不通的。它仍然返回总列。
我只想得到一些专栏,请帮助我。

4

2 回答 2

8

这是对我有用的代码:

from sqlalchemy import select
from sqlalchemy.sql import and_

results = select([orm_obj.c.poi_id, orm_obj.c.poi_name])\
    .where(and_(orm_obj.c.id > 1, orm_obj.c.id < 100)).execute()
for id, name in results:
    print id, name
于 2012-08-12T01:38:54.447 回答
0

使用通用select而不是Table.select

stmt = select([orm_obj.c.poi_id, orm_obj.c.poi_name]).\
where(and_(orm_obj.c.poi_id > 1, orm_obj.c.poi_id < 100)).\
limit(3)
result = conn.execute(stmt) 
于 2018-07-10T12:47:08.077 回答