Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Django QuerySet "ARE" Patterns
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
HayaoSuzuki
May 18, 2019
Technology
3.4k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Django QuerySet "ARE" Patterns
DjangoCongress JP 2019 Lightning Talk
HayaoSuzuki
May 18, 2019
Transcript
9 slides
明日から使うな! Django QuerySet アレパターン Hayao Suzuki @CardinalXaro
おまえ誰よ • Hayao Suzuki @CardinalXaro • 株式会社アイリッジ ◦ Pythonエンジニア ◦
テックリード(自称) • オライリージャパンの回し者 ◦ テクニカルレビュワー(自称)
今日のテーマ • Django QuerySetでやらかした思い出を語る。 • 本日、スマートフォンで作ったスライドなので手抜きです。 • この発表はフィクションであり、営業さんが客先で軟禁されたとか エンジニアが土日待機したなどの事実はありません。
indexを張らずにDBがスパイクした • token = models.TextField(max_length=200) • token = models.CharField(max_length=200, db_index=True)
年月日で調べたい 'regist_dt__year': today.year, 'regist_dt__month': today.month, 'regist_dt__day': today.day
なんだこれは、たまげたなあ WHERE (EXTRACT(DAY FROM `regist_dt`) = 28 AND EXTRACT(MONTH FROM
`regist_dt`) = 1 AND `regist_dt` BETWEEN '2019-01-01 00:00:00' AND '2019-12-31 23:59:59.999999'
こうした 'regist_dt__gte': datetime.datetime.combine(datetime.date.today(), datetime.time.min), 'regist_dt__lte': datetime.datetime.combine(datetime.date.today(), datetime.time.max),
そうそうこれだよ WHERE (`regist_dt` >= 2019-01-28 00:00:00 AND `regist_dt` <= 2019-01-28
23:59:59.999999
結論 • 実行計画調べよう • SQL見よう • LT資料は事前に準備しよう
More Decks by HayaoSuzuki
See All by HayaoSuzuki
Let's implement useless Python objects (revised)
hayaosuzuki
0
74
Tomorrow graphlib, Let us use everybody
hayaosuzuki
1
2.6k
Tasting "Python Distilled"
hayaosuzuki
0
430
Let's implement useless Python objects
hayaosuzuki
0
2.1k
How to Write Robust Python Code
hayaosuzuki
5
4.8k
Unknown Evolution of the Built-in Function pow
hayaosuzuki
0
1.5k
Python for Everyday
hayaosuzuki
1
2.5k
How to Use In-Memory Streams
hayaosuzuki
1
6.6k
Do you know cmath module?
hayaosuzuki
0
3.4k
Other Decks in Technology
See All in Technology
AI時代における医療情報システムのセキュリティ / Security of Healthcare IT Systems in the AI Era
henryofficial
0
170
3文字略語に騙されない! 世界一わかりやすい『EDR』超入門
kamadamakoto
1
170
目を覚ませ!僕らの認証情報が何者かに侵略されてるぞ
tkito
1
250
あの日、見つかっていなかったらどうなっていたか
kazzpapa3
2
220
81天的 AI Agent 軟體開發團隊治理實務分享
regionbbs
0
170
小さなエージェントから始めてみよう!実践コンテキストエンジニアリング
iwamot
PRO
0
130
Kiro を使うコツ (頼み方、覚えさせ方、任せ方) | 目指せ Kiro マスター 09
inariku
PRO
3
170
落とし穴にハマってわかった 開発生産性を測るときに気をつけたいこと
munakata
2
230
AIが会計業務の伴走者に。 マネーフォワード クラウド会計MCPサーバーで実現するAI前提の新しい業務プロセス
nobitabashi
0
160
Claude Securityを使ってみた / claude-security-claude-code-meetup-nagoya
tnir
0
120
Gov-JAWS#9 統合監視機能のマネージドサービス化+AIによる障害時自動調査
fj_yoshimura_kosuke
0
130
サーバーラックは作る時代! 3Dプリンターで作る10インチラックのススメ
jacopen
1
160
Featured
See All Featured
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
800
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
830
Chasing Engaging Ingredients in Design
codingconduct
0
400
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
430
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
570
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
480
Context Engineering - Making Every Token Count
addyosmani
9
1.3k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
1.1k
The SEO Collaboration Effect
kristinabergwall1
1
620
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k