ホームページ  >  記事  >  バックエンド開発  >  2 つのテーブル間の関連情報をクエリする方法 (thinkphp)

2 つのテーブル間の関連情報をクエリする方法 (thinkphp)

WBOY
WBOYオリジナル
2016-06-23 13:58:582060ブラウズ

2 つのテーブル
1 つ: id uid 名
2 つ; uid 名
これが関連付けであることはわかっていますが、書き方がわかりません。つまり、最初のテーブルの uid を 2 番目のテーブルの名前として表示し、


ディスカッション (解決策) への返信

select b.name,a.name from biao1 as a,biao2 as b を解決します。 a.uid=b.uid

select b.name,a.name frombiao1 as a,biao2 as b ここで、a.uid=b.uid

は thinkphp に書かれています

$a = new Model(' a' );
$list = $a->join('a.uid = b.uid で b を左に結合' );

$a = new Model('a'); ->join('left join b on a.uid = b.uid' );

ありがとう! !
TP では関連性は抽象的です

まず、モデルは RelationModel クラスを継承する必要があります 誰に関連付けられているかを示すために、 protected $_link = array(); のような配列が必要です

D()->relation( を呼び出すときtrue)->...->select(); が自動的に関連付けられます
属性を追加するだけです。公式の紹介を参照してください
http://doc.thinkphp.cn/manual/relation_model.html


TP ではリレーションは抽象です

まず、モデルは RelationModel クラスを継承する必要があります

D()->relation(true) を呼び出すときに誰と関連付けるかを示すために、 protected $_link = array(); のような配列が必要です。 ->...->select(); は、属性を追加するだけです。http://doc.thinkphp.cn/manual/relation_model.html を参照してください。私が欲しいのはマルチテーブルクエリです





$a = new Model('a')
$list = $a->join('left join b on) a.uid = b.uid' );

ありがとうございます! !

thinkPHP は直接クエリもサポートしています

$a=new Model();



$a = new Model('a'); ->join('left join b on a.uid = b.uid' );

結合内のサーフェスには接頭辞を付ける必要があります


$a = new Model('a') $list = $ a ->join('left join b on a.uid = b.uid' );

結合内のサーフェスにはプレフィックスを付ける必要がありますね


どのようなプレフィックス コードを追加する必要がありますか? $a = 新しいモデル('a');

$list = $a->join('left join b on a.uid = b.uid' )->select();
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。