ホームページ >データベース >mysql チュートリアル >読みやすさを改善し、繰り返しを避けるために、MySQL選択クエリで計算されたフィールドを再利用するにはどうすればよいですか?

読みやすさを改善し、繰り返しを避けるために、MySQL選択クエリで計算されたフィールドを再利用するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-24 12:12:10998ブラウズ

How Can I Reuse Calculated Fields in MySQL SELECT Queries to Improve Readability and Avoid Repetition?

mysql選択クエリの計算フィールドを再利用

大規模で複雑なSQLクエリを扱う場合、計算フィールドを再利用して、複製を回避し、読みやすさを向上させます。 MySQLでは、ユーザー変数を使用してこの目的を達成できます。

次の例を考えてみましょう

このクエリは、式f1_percentの計算フィールドtotal_saleを再利用しようとします。ただし、Total_Saleが販売テーブルに含まれていないため、MySQLは「不明なリスト」エラーを返します。

この問題を解決するために、次のものを使用できます。=計算シンボルは、ユーザー変数に計算値を与えます:
<code class="language-sql">SELECT 
    s.f1 + s.f2 as total_sale, 
    s.f1 / total_sale as f1_percent
FROM sales s</code>

変数名の前に@ この方法では計算フィールドを再利用できるが、注意を払う場所もいくつかあることに注意する必要があります。 MySQLドキュメントによると、同じステートメントでユーザー変数を割り当てて読み取ることの値は、予期せぬ結果を生み出す可能性があります。したがって、このテクノロジーを慎重に使用し、必要な場合にのみ使用することをお勧めします。
<code class="language-sql">SELECT 
    @total_sale := s.f1 + s.f2 as total_sale, 
    s.f1 / @total_sale as f1_percent
FROM sales s</code>

以上が読みやすさを改善し、繰り返しを避けるために、MySQL選択クエリで計算されたフィールドを再利用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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