ホームページ  >  記事  >  バックエンド開発  >  thinkphp の 4 レベル関連クエリなどをオンラインで記述する方法

thinkphp の 4 レベル関連クエリなどをオンラインで記述する方法

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

thinkphp の第 4 レベル関連のクエリを作成するには?関係: A は B の援助にあり、B は C の入札にあり、C は D のシドにあります。これらはどのように関係していますか?
A-->B-->C-->D
M("D")->jion("A on B.aid=A.id)->jion("B on C. bid=B.id)->jion("C on D.cid=C.id) これは間違っています


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

あなたの表現は間違っています
->join (' A 上の B.aid=A.id')->join("B 上の C.bid=B.id")->join("C 上の D.cid=C.id")

ただjoin() に join を書きます

join にする必要があります

jion を join 文に変更するだけです、問題ありません

式が間違っています
->join('A on B .aid=A.id')- >join("B on C.bid=B.id")->join("C on D.cid=C.id")


これは ->join('A on B.aid=A.id')->join("C on B.bid=C.id")->join("D on B.cid=D.id" ) これでOKです。
jion を join 文に変更するだけで問題ありません!

左、右、内側、書かないと間違っています


最終的な SQL コマンド を見てください。要件を満たしています
select * from A left join b on a.id=b.aid    left join c on b.id=c.bid    left join d on d.id=d.cid


最終的に生成された SQL コマンドを見ると

要件を満たしています

select * from A left join b on a.id=b.aid    left join c on b.id=c.bid    left join d on d.id=d.cid


生成された SQL は次のようになりますが、エラーが報告されます。 [Err] 1054 - Unknown columns


1054 - Unknown column Unknown列 明らかにフィールド名が間違って書かれています。よく確認してください


1054 - 不明な列 不明な列

明らかにフィールド名が間違って書かれています。よく確認してください 見てください


このエラーが原因であることもわかっています。名前が間違っていますが、名前が正しいことを確認するために何度もチェックしました


生成された SQL コマンドを mysql マネージャーまたは phpmyadmin に入れて実行します 元のエラーを見てください


メッセージは何ですか?生成された SQL コマンドを mysql マネージャーまたは phpmyadmin に入れて実行します

元のエラー メッセージが何であるかを確認します

問題は、最初に D、次に C、そして再び B の順序が間違っていることがわかります。それからまたA

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