問題タブ [laravel-query-builder]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
331 参照

laravel - DB::insert - エラーは返されませんが、ステートメントからの挿入結果はありません

次の生のクエリを使用して、特定のテーブルのバックアップを作成しました。

answersテーブルには次のスキーマがあります。

今、単一の行を復元するために、answers_bupテーブルからテーブルへanswers。私は次のように書きましたDB::insert

answers_bup基本的に、テーブルから 、 answercreated_atおよびの 3 つのフィールドをコピーするだけで済みますupdated_at。他のものには新しい値を割り当てる必要があるため、上記のステートメントがあります。

このコード フラグメントを実行しても、エラーは発生しません。それでも、挿入は行われません。answersテーブルは空のままです。

ここで何が間違っているのかを理解してくれる人はいますか?

0 投票する
1 に答える
82 参照

php - Laravel Query Builder を使用してタプルを複数回更新することはできません

入力jsonを使用してログインメソッドを呼び出しています(入力jsonのフィールドはmobile、userType、deviceId、およびdeviceTypeです)。この関数で私がやっていることは、入力された携帯電話番号を持つユーザーが存在する場合、デバイスの詳細 (deviceId と deviceType) を更新する必要があることです。そうでない場合、そのようなユーザーが存在しない場合は、新しいユーザーを作成し、そのすべての詳細をデータベースに挿入されました。いずれの場合も、現在のタプルが返されます。エラーがあればそれも返されます。

私が直面している問題は、既存のユーザーの携帯電話番号を (新しい deviceId と deviceType で) 挿入すると、そのユーザーが (必要に応じて) 更新されることです。しかし、もう一度実行すると、「デバイスの詳細の更新中にエラーが発生しました。」が返されます。特定のクエリが初めて正しく実行され、その後は正しく実行されない可能性があることを理解できません。私を助けてください。前もって感謝します。

0 投票する
1 に答える
633 参照

laravel - laravelスコープモデル関数エラー

laravelのスコープを使用して、特定のcash_saleに属するすべてのcash_sales_itemsを合計しようとしています。問題は、これらのテーブルにいくつかの情報がある場合、コードは正常に機能しますが、テーブルが空の場合はエラーが発生することです

以下はコードとテーブル構造です

そしてもう一つは

ブレードテンプレートでスコープメソッドを呼び出しています

現金販売モデルの PayedOrCollected 関数は次のようになります

0 投票する
2 に答える
493 参照

php - groupby クエリが laravel クエリ ビルダーで機能しない

以下のクエリを使用しています。

しかし、次のようなエラーが発生します。

私が犯した間違いは何ですか。

注:iDeveloperIdの代わりに使用すると機能しますvFirstName

前もって感謝します ...

0 投票する
3 に答える
3207 参照

laravel - whereIn メソッドを使用して、同じ配列値に対して異なるインデックスで複数の結果を返す

$pidArray には製品 ID が含まれており、それらの製品 ID の一部は同じである可能性があります。IE: 34 34 56 77 99 34. このままでは、whereIn メソッドは、別のインデックスを持っていても、$pidArray で既に見つかった productId の結果を返さないようです。

$productDataForOrder に製品データが含まれるようになりましたが、$pidarray 内の一意の ProductID についてのみです。そのため、sum 関数が実行されると、同じ productID の複数のインスタンスの価格が考慮されないため、合計は正しくありません。

次のコードも、配列内のすべての製品 ID に対して同じオブジェクトを返すわけではありません。したがって、$pidArray に 3 つの同一の製品 ID が含まれている場合、クエリは 3 つではなく、1 つのオブジェクトを含むコレクションのみを返します。

0 投票する
0 に答える
56 参照

mysql - すべてのオブジェクトが 1 つの行にあるわけではなく、すべてのオブジェクトの平均を取得します

テーブルの場所とテーブルの評価があります。すべての場所には、評価テーブルに複数の行があります。すべての場所を取得したいのですが、すべての場所オブジェクトにはuser_ratingというプロパティが 1 つ必要です。その値は、この場所のrating.rate_noの平均です。この場所の評価がない場合 (評価テーブルに行がない場合)、user_rating は 0 にする必要があります。私のコードは次のとおりです。

このコード グループはすべて、私が望まない avarage(rating) を持つ 1 つのオブジェクトに配置されます。