2015-02-16 6 views
0

UPDATE table1 SET column1 = column2 WHERE column3 = 'abc';sql update column из другого столбца в той же таблице в sqlalchemy

Как выполнить приведенный выше запрос в SQL алхимии ОРМ

table1 = Table('table1', metadata, 
    Column("column1",  SmallInteger(),  nullable=False, autoincrement=False), 
    Column("column2",  SmallInteger(), nullable=False, autoincrement=False), 
    Column("column3",  String(length=255), nullable=False) 
) 

class Table1(object): 
    pass 
mapper(Table1, table1) 

ответ

1
DBSession.query(table1).filter_by(column3 = 'abc').update({"column1":column2}, synchronize_session=False) 

использовать этот

where ==== filter_by 
table1 === class containing the table1 schema 
update command with columns as key in query 

http://docs.sqlalchemy.org/en/latest/core/dml.html следовать этой ссылке будет направлять вас

+0

я получаю эту ошибку AttributeError : Ни объект 'InstrumentedAttribute', ни объект 'Comparator' не имеют атрибута ' self_group ' – dumper

+0

может показать ваш класс наследования (Base). – kid

Смежные вопросы