2010年08月26日

innerjoin と leftjoin の違い

お願いします♪いいねとかつぶやいたりして下さい
 
phpには自信あるけど、はっきり言ってmysqlには自信がない。
覚えないといけないかな。命令文。

で、
「ユーザーが タグを いくつか持っている。ただし、そのタグを持っていないユーザーはfindしない」
というSQL文を発行したいときにどうすればいいのか?

cakephpで考えてみたが全然わからん。

解決策として、一度全て読み出してそれを foreach でごりごりやろうか・・・と
思ったがそれでは進歩が無いし、バグの温床オンパレード。

1日かけて leftjoin と innerjoin を知ることになった。

leftjoinって何ですか。


ユーザーがタグを 10個もってようが、0個もってようが持ってまいが関係無いしにユーザー情報を読み出しますよ。
だからタグを持っていないユーザーを読み出したくないなんてワガママは通用しませんよ。



innerjoin


ユーザーがタグを持っていない場合はそのユーザーのデータは全て読み出しませんよ。
よって、タグを持っていないユーザーは読み出さないって時はこちらを使いましょうね。



という違い。

で、cakephp は基本的に leftjoin になっているみたい。

では、cakephpでinnerjoinにするにはどうしたらいいのか?
を次の章で考えてみます。
関連するタグ: PHP cakephp MYSQL
あなたにとって有用な記事でしたか?是非ブックマークしておくことをおすすめします。
 




ライブラリを配布しちゃったり
webデザイン
Fireworks
HTMLコーディング
CSS
Dreamweaver
携帯サイト
webプログラム
PHP
正規表現
cakephp
MYSQL
javascript
webマーケティング
adwords
analytics
windows7
ショートカットキー
おすすめ情報
サイト
facebook
ライブラリ
配布
アプリ
iphone
ipad
サーバー
さくらサーバー
全ての記事を読む




トップ - 最新の記事一覧 - お問い合わせ