ホームページ >バックエンド開発 >PHPチュートリアル >Laravelで特定の条件を持つモデルの最新の関連モデルをクエリするにはどうすればよいですか?

Laravelで特定の条件を持つモデルの最新の関連モデルをクエリするにはどうすればよいですか?

WBOY
WBOYオリジナル
2016-10-22 00:14:11975ブラウズ

StackOverflow で質問したところなので、答えてください。

http://stackoverflow.com/ques...

パッケージモデルには多くのステップモデルがあります。 Step には、tinyint 型のステータス フィールドとタイムスタンプ フィールドの 2 つのフィールドがあります。
パッケージ A に次のステップがあるとします

  • 18日10時のステータスは1です

  • 19日9:00時点でステータスは2です

パッケージ B に次のステップがあるとします

  • 19日8:00時点でステータスは1です

  • 19日9:00時点でステータスは2です

  • 19日10時のステータスは3です

このように、Aの最新のステップステータスは2、Bの最新のステップステータスは3になります。

それでは、最新のステップステータスが 2 であるパッケージをクエリするにはどうすればよいでしょうか?

パッケージモデルに

を追加してみました リーリー

次に、次のようにクエリします

リーリー

しかし、期待した結果が得られません。

いわゆる予期しない結果とは、パッケージテーブルに B しかない場合、最新ステップステータスが 2 で、B の最新ステップステータスが 3 であるパッケージをクエリしたいため、結果は空になるはずであることを意味します。しかし、このようなクエリの結果は空ではありませんが、Bが含まれています。

それでは

に変更してみました リーリー

それは今も同じです。

私は Laravel を学んだばかりで、この問題に遭遇したときは非常に混乱しました。Google で何度も検索しましたが、必要な答えが見つかりませんでした。助けていただければ幸いです、ありがとう!

Laravel 5.3の使用

返信内容:

StackOverflow で質問したところなので、答えてください。

http://stackoverflow.com/ques...

パッケージモデルには多くのステップモデルがあります。 Step には、tinyint 型のステータス フィールドとタイムスタンプ フィールドの 2 つのフィールドがあります。

パッケージ A に次のステップがあるとします

  • 18日10時のステータスは1です

  • 19日9:00時点でステータスは2です

パッケージ B に次のステップがあるとします

  • 19日8:00時点でステータスは1です

  • 19日9:00時点でステータスは2です

  • 19日10時のステータスは3です

このように、Aの最新のステップステータスは2、Bの最新のステップステータスは3になります。

それでは、最新のステップステータスが 2 であるパッケージをクエリするにはどうすればよいでしょうか?

パッケージモデルに

を追加してみました リーリー

次に、次のようにクエリします

リーリー

しかし、期待した結果が得られません。

いわゆる予期しない結果とは、パッケージテーブルに B しかない場合、最新ステップステータスが 2 で、B の最新ステップステータスが 3 であるパッケージをクエリしたいため、結果は空になるはずであることを意味します。しかし、このようなクエリの結果は空ではありませんが、Bが含まれています。

それでは

に変更してみました リーリー

それは今も同じです。

私は Laravel を学んだばかりで、この問題に遭遇したときは非常に混乱しました。Google で何度も検索しましたが、必要な答えが見つかりませんでした。助けていただければ幸いです、ありがとう!

Laravel 5.3の使用

リーリー

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