CakePHP 1.1.13.4450 + PHP 5系 + MySQL 4.1系にてテスト Job モデルは com_id フィールドがあって Com モデルに belongsTo Job を一覧表示するときに Com の name フィールドも表示したい Job.idJob.nameJob.com_id 1仕事A1 2きつい仕事2 3楽な仕事1 Com.idCom.name 1会社A 2会社B というデータから、 Job.idJob.nameCom.name 1仕事A会社A 2きつい仕事会社B 3楽な仕事会社A こんな感じの一覧を表示したいわけです。どうするのが効率が良いか。まず、Job モデルのアソシエーションを以下のように設定。 <?php class Job extends AppModel { var $name = 'Job'; var $belongsTo = array(
Index列を加工すると、加工した結果を得るための全件検索を行ってしまいIndexが利用されない。 次のような場合、Indexが利用されるように条件式を変更することでパフォーマンスが向上する。 ・Index列が関数の引数として使用されていてIndexが使用されていない場合 ・Index列を含む計算式が使われていてIndexが使用されていない場合 ・暗黙の型変換が行われたためにIndexが使用されていない場合 例)下記のような場合はorder_noにインデックスが張ってあっても使用されない。 WHERE TO_NUMBER (SUBSTR(a.order_no, INSTR(b.order_no, '.') - 1)) = TO_NUMBER (SUBSTR(a.order_no, INSTR(b.order_no, '.') - 1))
本連載では、Oracleデータベースのパフォーマンス・チューニングの中から、特にSQLのチューニングに注目して、実践レベルの手法を解説する。読者はOracleデータベースのアーキテクチャを理解し、運用管理の実務経験を積んでいることが望ましい。対象とするバージョンは現状で広く使われているOracle9iの機能を基本とするが、Oracle 10gで有効な情報も随時紹介していく。(編集局) 連載目次 前回「チューニングが必要なSQLを洗い出す」では、動的パフォーマンスビューを使用してチューニング対象となり得るSQLを洗い出す方法を説明しましたが、チューニングを行うためには、SQLの実行計画など、より詳細な情報が必要となります。今回は、これらの情報を取得する方法、また収集した情報の分析方法について説明していきます。 SQL詳細情報の取得 SQLチューニングを行う際に重要となる情報としては、SQLの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く