[Codeigniter-users] 1つのマスタをleftjoinで複数回参照

Back to archive index

齊藤保 saito****@jin-s*****
2013年 3月 20日 (水) 12:56:11 JST


横入りで失礼いたします。
JIN SOFTWAREという会社で、自社製品に
CodeIgniterを使用させていただいている齊藤と申します。
よろしくお願いいたします。

アクティブレコードは弊社では使用しておらず、
SQLをダイレクトに組んで投げる方式をとっておりますが、
アクティブレコードが引数を元に最終的にはSQLを組み上げる
ものであるならば、下記のような書き方になるのかと、
推測します。

  $this->db->select("*");
  $this->db->from(t_daichou as d);
  $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left");
  $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left");
  $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left");

これによって内部的に
select * from t_daichou as d
             left join m_staff as s1 on d.uke_id=s1.staff_id
             left join m_staff as s2 on d.tai_id=s2.staff_id
             left join m_staff as s3 on d.update_id=s3.staff_id

というSQLが投げられるようならこれでいけるかと
思います。

弊社では、上記の記述を見て分かる通り、アクティブレコードを
使用するのとSQLを自前で組むことの差異を感じられなかったため
使用しない選択をしたのですが、アクティブレコードを使用する事の
メリット等ありましたら、ご教示いただけるとありがたいです。

ちなみに弊社では今後も自社製品(受注も含め)には全て
CodeIgniterを使用する計画でおります。
session周りで若干バグ臭い動きもありますが、回避出来ない
レベルでなく、何より敷居の低さ、手軽さが魅力で、軽量なのに
必要な機能が揃っていると実感しています。

導入の際には日本CodeIgniterユーザ会の発信される情報を
頼りにさせていただきました。あらためて御礼申し上げます。

今後ともよろしくお願い申し上げます。




2013年3月19日 18:57 Kenichi Hayashi <kenic****@gmail*****>:

> 林です。こんにちは。
>
> > 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、
> > 何かそのような記述方法というものがあるのででしょうか?
>
> m_staffにそれぞれエイリアスを指定してみてはどうでしょう。
>
> "m_staff as s1"
> "m_staff as s2"
> "m_staff as s3"
>
> のような感じで。
>
> --
> Kenichi Hayashi
>
> _______________________________________________
> Codeigniter-users mailing list
> Codei****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users
>



-- 
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

〒167-0043  東京都杉並区上荻1-16-3 森谷ビル4B
   JIN SOFTWARE株式会社
           代表取締役 齊藤 保
TEL: 03-6915-1215 FAX: 03-6915-1216
Mobil: 090-4416-0111
Mail  saito****@jin-s*****    WEB http://jin-soft.jp

/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
-------------- next part --------------
HTMLの添付ファイルを保管しました...
Download 



Codeigniter-users メーリングリストの案内
Back to archive index