データベーススキーマ私はこれらの三つの主要なテーブル持って1つの
に優先順位を付け、複数の列を選択します。
- 製品
- グループ
- ユーザー
そして、これら二つのピボットテーブルを:
- product_user
- group_user
各ユーザはグループを有しています。 各製品の価格は、product_userピボット・テーブルの価格またはgroup_user表の価格によってオーバーライドされる可能性があります。
問題
今、私はこれらのテーブルとすべてに参加する方法を知っているが、私の現在のソリューションで、私は価格だけ、user_priceとgroup_priceなどの別の列にこれらの価格のそれぞれを選択して使用してそれらに優先順位を付けることができていますPHP。
質問
それはこれらの異なるテーブルからこれらの3つの列を選択して、唯一のSQLを使用して1列にそれらを優先させることは可能ですか?
この価格を価格に選択した場合は、この価格を選択してグループ固有の価格があり、特別価格がない場合は製品のデフォルト価格を選択します。
Laravel特定溶液
@Shadow以下に指摘したように、溶液は、MySQL合体関数です。 Laravelのクエリビルダを使用して
私は今、私はこの文を使用して欲しいものを達成することができました:
この機能の心臓部はありませんが、非常に有望です。あなたは正しいと思いました;) –