は、私は2つのテーブルを持っている:外部キーで特定の行を選択する方法は?
class symbol(models.Model):
ticker = models.CharField(max_length=40)
instrument = models.CharField(max_length=64, default='stock')
name = models.CharField(max_length=200)
sector = models.CharField(max_length=200, default=None)
currency = models.CharField(max_length=64, default='USD')
created_date = models.DateTimeField(auto_now=True)
last_updated_date = models.DateTimeField(auto_now=True)
class daily_price(models.Model):
symbol = models.ForeignKey(symbol)
price_date = models.DateTimeField()
created_date = models.DateTimeField()
last_updated_date = models.DateTimeField()
open_price = models.DecimalField(max_digits=19, decimal_places=4)
high_price = models.DecimalField(max_digits=19, decimal_places=4)
low_price = models.DecimalField(max_digits=19, decimal_places=4)
close_price = models.DecimalField(max_digits=19, decimal_places=4)
adj_close_price = models.DecimalField(max_digits=19, decimal_places=4)
volume = models.BigIntegerField()
は、私は、テーブルのstrategyceleryapp_daily_priceの行を選択します。ジャンゴで
Iはsymbol's ticker
(外部キー)によって特定の行を選択するread_sql_queryを使用する
con = sqlite3.connect("/home/leo/github/StrategyCeleryWebsite/db.sqlite3")
df = pd.read_sql_query("SELECT * from strategyceleryapp_daily_price", con)
# verify that result of SQL query is stored in the dataframe
print(df.head())
con.close()
、Iはdaily_price.objects.get(symbol__ticker='AAPL')
を使用することができます。
しかし、私はSQLコマンドからコマンドを書く方法を知らない。
このコマンドを書くにはどうすればよいですか?
ありがとうございました。
なぜあなたをあなたがして作成Djangoのクエリを確認することができます
'sqlite3.connect'を使用しますか? Djangoが** _ ORM(オブジェクト・リレーショナル・マッピング)_ **をベースにしていることを知っていましたか? –
はい、私はORMを知っています。しかし、このコードは純粋なpythonで動作します。ありがとう。 – yensheng
これについて:https://docs.python.org/2/library/sqlite3.html –