0

テーブルが 1 つありますMIS_Details。次の列があります。

  • 小切手ステータス
  • バウンス日の確認
  • Policy_status_change_date

選択クエリを使用して Excel でレポートを作成しています。

私の要件は次のとおりです。チェックステータス列に値がある場合、データベースのテーブルを更新せず'Cheque Bounce'に、そのレコードのチェックバウンス日をコピーする必要があります。Policy_status_change_date

これはレポートに表示するだけなので、更新は使用できません。

4

1 に答える 1

0

通常、case ステートメントを使用して、cheque status列の値がテキストと一致するかどうかを確認できます。一致する場合は、バウンス日をPolicy_status_change_date列の値として使用します (構文は、提供しているデータベースの種類によって異なる場合があります)。あなたのデータ)。

SELECT 
   ChequeStatus
   ,ChequeBounceDate
   ,CASE 
      WHEN ChequeStatus = 'Cheque Bounce'
         THEN ChequeBounceDate
      ELSE Policy_status_change_date
   END AS Policy_status_change_date
FROM 
   MIS_Details

また、デザイン ノートでは、可能なステータスを別のテーブルに保存して、実際のテキストではなくステータス ID を使用して比較することもできます。後でステータスのテキストを変更する場合は、このようにします。 、すべてのクエリを更新する必要はありません。

于 2012-06-15T17:55:34.637 に答える