Commit 7f602e97 authored by Dr.李's avatar Dr.李

modified sql script for fetching data

parent 65c88236
...@@ -1677,6 +1677,9 @@ class FullFactorView(Base): ...@@ -1677,6 +1677,9 @@ class FullFactorView(Base):
AERODEF = Column(BigInteger) AERODEF = Column(BigInteger)
Conglomerates = Column(BigInteger) Conglomerates = Column(BigInteger)
COUNTRY = Column(BigInteger) COUNTRY = Column(BigInteger)
d_srisk = Column(Float(53))
s_srisk = Column(Float(53))
l_srisk = Column(Float(53))
if __name__ == '__main__': if __name__ == '__main__':
......
This diff is collapsed.
...@@ -56,35 +56,37 @@ class Universe(object): ...@@ -56,35 +56,37 @@ class Universe(object):
return all_and_conditions, all_or_conditions return all_and_conditions, all_or_conditions
def query(self, ref_date): def query(self, ref_date):
query = select([UniverseTable.trade_date, UniverseTable.code]).distinct()
all_and_conditions, all_or_conditions = self._create_condition() all_and_conditions, all_or_conditions = self._create_condition()
query = query.where( if all_or_conditions:
and_( query = and_(
UniverseTable.trade_date == ref_date, UniverseTable.trade_date == ref_date,
or_( or_(
and_(*all_and_conditions), and_(*all_and_conditions),
*all_or_conditions *all_or_conditions
)
) )
else:
query = and_(
UniverseTable.trade_date == ref_date,
*all_and_conditions
) )
)
return query return query
def query_range(self, start_date=None, end_date=None, dates=None): def query_range(self, start_date=None, end_date=None, dates=None):
query = select([UniverseTable.trade_date, UniverseTable.code]).distinct()
all_and_conditions, all_or_conditions = self._create_condition() all_and_conditions, all_or_conditions = self._create_condition()
dates_cond = UniverseTable.trade_date.in_(dates) if dates else UniverseTable.trade_date.between(start_date, end_date) dates_cond = UniverseTable.trade_date.in_(dates) if dates else UniverseTable.trade_date.between(start_date, end_date)
query = query.where( if all_or_conditions:
and_( query = and_(
dates_cond, dates_cond,
or_( or_(
and_(*all_and_conditions), and_(*all_and_conditions),
*all_or_conditions *all_or_conditions
)
) )
) else:
) query = and_(dates_cond, *all_and_conditions)
return query return query
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment