MySQL: すべての結果をループ内で結合する (おそらく UNION を使用する?)
P粉897881626
P粉897881626 2024-02-17 15:31:33
0
1
351

編集: すでに解決され、回答されています: ただし、同様の問題がある場合は、お気軽に読んで、プロセスがどのように機能するかを確認してください

######背景### 「sea_dew_potion」というプロシージャを作成し、「loopseadew」というループ内に配置しました。ループは期待どおりに機能します。

######質問### このループでは 18 個の結果が生成されますが、これを単一の結果セットに含めて、それを Tableau にエクスポートして複数のデータ ポイントを含む折れ線グラフを作成し、何らかの形の曲線を形成できるようにしたいと考えています。いくつか調べた結果、UNION は機能する可能性があると思いますが、その方法がわかりません。主に、ループがどのように機能するのか、そしてループ内に別のプロセスをインストールする方法を理解しているところだからです(笑)。ご協力いただきありがとうございます!

リーリー

編集: ある程度の進歩はありましたが、「heal」列と「cost」列に null 値が表示されます。治療値はプログラム「sea_dew_potion」によって生成されます。これで、すべての値が正しい 18 個の個別の結果と、すべての結果を組み合わせたものですが、治療とコストの値が空の 1 個の結果が得られました。 下部のスクリーンショットは、結果セット間の問題を示しています。 リーリー

パート 2 を編集

@blabla_bingo に声をかけてください。ついにわかりました!これが興味のある人への最後の質問です (笑) リーリー すべての結果には治療法も費用もかかりません

個人の成果と治療および費用の比較

最終的な正しいクエリ結果

P粉897881626
P粉897881626

全員に返信(1)
P粉511757848

UNION には、ORDER BY 句を使用して並べ替えできないなどの欠点があります。さらに、続行する場合は、この例では合計 17 個の UNION を使用する必要があり、クエリが長すぎます。結果テーブルを使用し、そこにプログラム sea_dew_potion を挿入することをお勧めします。その後、結果のテーブルに対してクエリを実行し、tableau テーブルにエクスポートする前にいくつかの調整を行うことができます。最後に余談ですが、ループ内で sea_dew_potion を 18 回呼び出す代わりに、カウント パラメータを sea_dew_potion プロシージャに追加して、カウントを定義して実行するだけで済むようにすることもできます。手続きは一度。たとえば、sea_dew_potion(p1,p2,p3,p4,p5,count_num int)

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート