MySQL Casual Advent Calendar 2016 - Qiita 12日目の記事です。 まさかの3回目。もうムリ。。。 JOIN ON句で結合条件ではなく絞込条件を書くことができることを、知らなかったのです。 具体的な名称がわからない&検索にもヒットしにくいので、勝手に名前をつけました。 「JOINに直値」 わかりにくいと思うので、サンプルSQL書きます。 SELECT tbl_a.col1,tbl_b.col1 FROM tbl_a INNER JOIN tbl_b ON tbl_a.col1 = tbl_b.col1 AND tbl_a.col2 = 0; JOINでは一般的に「表A JOIN 表B... ON 表A.列 = 表B.列」と書いて表同士を結合するための条件を書きますが、ここに、一方の表の絞り込み条件を書けるんです。 SQLの教科書的な書籍ではまず見かけま
他人が書いた変更対象のソースコードに SELECT a,b FROM AAA JOIN BBB ON b = a みたいなのが出てきて思考停止。普段は明示的にINNER or LEFT or RIGHT or FULLを書いているのでどの扱いになるのかまるで判らない。調べようとしてもうまくぐぐれない。orz なのでやってみた。INNER JOINと同じだった。 もともと JOINのディフォルトが内部結合なのでINNERが省略可能で、左外部結合・右外部結合・完全外部結合のときにOUTERが省略可能なんだよな。 SELECT a,b FROM AAA INNER JOIN BBB ON b = a ----- 省略可能 SELECT a,b FROM AAA LEFT OUTER JOIN BBB ON b = a ----- 省略可能 SELECT a,b FROM AAA RIGHT OU
memcachedで快速アプリケーション − @IT 上記の記事で、こんなことが書いてありました。 以下に、Railを使用する際に用いられる一般的なパフォーマンス向上方法を紹介しよう。 O/Rマッパーを介さずに直接SQL文を発行する →ActiveRecord::Base::find_by_sqlメソッド 部分テンプレートキャッシング →flagment_cache レコード走査時に、関連先オブジェクトを一括生成する →eager loading eager lodingというフレーズは聞いたことあるような気がしたけど、具体的に何かはよくわからなかったので調べました。 eager loadingとは 例えば下記のようなTaskモデルとProjectモデルがあったとして class Task < ActiveRecord::Base belongs_to :project end class
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く