Laravel データベースクエリを作成するときは、通常、取得する特定のフィールドを指定する必要があります。 Laravel は、この目標を達成するためにいくつかの異なる方法を提供します。以下は、これらのメソッドの詳細な紹介です:
Laravel の select() メソッドは、特定のフィールドを取得する最も基本的な方法です。このメソッドを通じて返されるフィールドを指定できます。たとえば、次の例は、users テーブルの名前フィールドと電子メール フィールドをクエリする例です。
$users = DB::table('users') ->select('name', 'email') ->get();
上記のステートメントから、select( で取得するフィールドを渡すだけでよいことがわかります。 ) 方法。 。これにより、名前と電子メールのフィールド値を含む配列が返されます。
場合によっては、既存のクエリ操作で返されるフィールドを追加する必要がある場合があります。このとき、addSelect() メソッドを使用できます。たとえば、次の例は、users テーブル内のすべてのフィールドをクエリし、country フィールドを追加する例です。
$users = DB::table('users') ->addSelect('country') ->get();
上記のステートメントから、追加する値を渡すだけでよいことがわかります。 addSelect() メソッドのフィールド。これは、すべてのフィールド値と国フィールド値を含む配列を返します。
特定のフィールドの値のみを取得する必要がある場合は、pluck() メソッドを使用できます。たとえば、次は users テーブルの email フィールド値をクエリする例です。
$email = DB::table('users')->where('name', 'John')->pluck('email');
上記のステートメントから、pluck() で取得するフィールドを渡すだけでよいことがわかります。方法。これはフィールドの値を返します。
pluck() メソッドと同様に、value() メソッドは特定のフィールドの値のみを取得します。ただし、pluck() メソッドとは異なり、配列ではなく単一の値を返します。たとえば、次は users テーブルの email フィールドの値をクエリする例です。
$email = DB::table('users')->where('name', 'John')->value('email');
上記のステートメントから、取得するフィールドを値に渡すだけでよいことがわかります。 () 方法。これはフィールドの値を返します。
特定のフィールドを取得する、より高度な方法もあります。複数のテーブルからデータを取得し、特定の条件に基づいてデータをフィルタリングする必要がある場合は、selectRaw() メソッドを使用できます。たとえば、orders テーブルと products テーブルの特定のフィールドをクエリする例を次に示します。
$orders = DB::table('orders') ->selectRaw('price * ? as total_price', [2]) ->whereIn('id', [1, 2, 3]) ->get();
上記のステートメントから、合計を計算するために selectRaw() メソッドに生の SQL クエリを記述したことがわかります。料金。また、 whereIn() メソッドを使用して取得する注文 ID を指定し、 get() メソッドを使用してクエリ結果を取得します。
概要
Laravel でデータベース クエリを実行する場合、取得する特定のフィールドを指定することが非常に一般的な要件です。この目標を達成するには、select()、addSelect()、pluck()、value()、selectRaw() などのメソッドを使用できます。これらのメソッドはさまざまな柔軟性と機能を提供するため、特定のクエリのニーズに基づいて適切なメソッドを選択できます。
以上がlaravelクエリ固有のフィールドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。