sqlalchemy.orm 多条件
datas = session.query(Stock).filter(and_(Stock.now_price<25,Stock.type==0,Stock.liutongzhi<200,Stock.huanshou<10,Stock.zhangfu<5,Stock.shiying<200)).all()
print(len(datas))
但是我在实际拉取的时候发现 , 不管我里边有多少条数据, all() 返回的一直只有一条结果,如果我去掉filter条件的话又能返回很多的数据,那么到底是什么阻止了多条数据的返回呢。
最后查询返现, 是因为在定义model 的时候,我将sns_id定义成了
primary_key = True
直接更新
from stock.models.db_bysql import DB_bysql
from stock.models.db_model import Day_his, Stock
from stock.stock_info import get_stock_info
from stock.tools.stock_tool import get_code
engine = create_engine('sqlite:///stock.db?check_same_thread=False', echo=False)
Session = sessionmaker(bind=engine)
session = Session()
datas= session.query(Stock).all()
for stock in datas:
stock.name = info[1]
session.flush()
session.commit()