SQL複数列日付最大値取得スキル
複数の日付列またはタイムスタンプ列を含むテーブルを操作する場合、各行の最新の値を識別する必要があります。この記事では、複数の列の最大値を取得し、生データをより管理しやすい形式に変換するための SQL ソリューションを提供します。
問題の説明
「TableName」という名前のテーブルがあり、列 [Number]、[Date1]、[Date2]、[Date3]、[Cost] があるとします。目標は、このテーブルを、各行の情報 [Number]、[Most_Recent_Date]、および [Cost] を表示する新しいテーブルに変換することです。
解決策
SQL Server で複数の列の最大値を取得する効果的な方法は、T-SQL および SQL Server 構文を使用することです。
<code class="language-sql">SELECT [Other Fields], (SELECT Max(v) FROM (VALUES (date1), (date2), (date3),...) AS value(v)) as [MaxDate] FROM [YourTableName]</code>
このコードは、テーブル値コンストラクター「VALUES」を使用して、元のテーブルの個々の列の値を含む一時テーブルを構築します。括弧内の SELECT ステートメントは、各行の最大値を計算し、それを別名「[MaxDate]」に割り当てます。この情報を元のテーブルの他のフィールドと組み合わせることで、目的の出力形式を持つ新しいテーブルが得られます。
以上がSQL の複数の日付列から最新の日付を見つける方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。