0

私のSQLAlchemyコード:

used_emails = list(db.execute(halo4.select(halo4.c.email != '')))

戻り値:

[(80940L, 'P7J4H-DFDMG-G6HMJ-W7PF9-MDTF1', '1', 'first.last@domain.com', datetime.datetime(2012, 11, 3, 3, 48, 58)), (80939L, 'GCTFY-QPK2Y-PX1CJ-W69QY-PHDGZ', '1', 'first.last@domain.com', datetime.datetime(2012, 11, 3, 15, 8, 15)), (80938L, 'R4XGV-PG461-RGXX7-9R47R-2RWYZ', '1', 'first.last@domain.com', datetime.datetime(2012, 11, 3, 15, 8, 27))]

SQLAlchemy のみを返すにはどうすればよいですか:

[('first.last@domain.com', 'first.last@domain.com', 'first.last@domain.com')]

4

1 に答える 1

0

email以下は、列の値のリストを示します。

from sqlalchemy.sql.expression import select

used_emails = [row.email for row
               in db.execute(select([halo4.c.email], halo4.c.email!='')]

基本的に、列だけのステートメントselect()を生成するように関数に指示しています。の結果はになるため、リスト内包表記の仕事は、 iterable から取得した単一の列行から列文字列値のリストを作成することです。SELECTemailexecute()ResultProxyemailResultProxy

于 2012-11-04T17:35:54.517 に答える