17.10 - 例: 従業員の給与を示すレポートの作成 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL関数、式、および述部

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1145-171K-JPN
Language
日本語 (日本)

給与が$40000よりも少ない従業員はすべて、昇給対象者になります。

給与の上限 勤続年数の下限 昇給の割合
$30000.00 8 15
$35000.00 10 10
$40000.00 5

次のSELECT文は、CASE式を使用して給与が$40000より少ない従業員すべてを表示するレポートを作成し、名字の最初の15文字、給与総額($と句読点を使用した書式)、現在の日付を基にした勤続年数(On_The_Jobの列)、および「15%昇給」、「10%昇給」、「05%昇給」、「資格なし」の4つのカテゴリのどの資格を有するのかを表示します。

   SELECT CAST(last_name AS CHARACTER(15))
      ,salary_amount (FORMAT '$,$$9,999.99')
      ,(date - hire_date)/365.25 (FORMAT 'Z9.99') AS On_The_Job
      ,CASE 
          WHEN salary_amount < 30000 AND On_The_Job > 8 
          THEN '15% Increase'
          WHEN salary_amount < 35000 AND On_The_Job > 10 
          THEN '10% Increase'
          WHEN salary_amount < 40000 AND On_The_Job > 10
          THEN '05% Increase'
          ELSE 'Not Qualified'
         END  AS Plan
   WHERE salary_amount < 40000
   FROM employee
   ORDER BY 4;

この問合わせの結果は、次のテーブルのとおりです。

last_name salary_amount On_The_Job Plan
Trader $37,850.00 20.61 05% Increase
Charles $39,500.00 18.44 05% Increase
Johnson $36,300.00 20.41 05% Increase
Hopkins $37,900.00 19.99 05% Increase
Morrissey $38,750.00 18.44 05% Increase
Ryan $31,200.00 20.41 10% Increase
Machado $32,300.00 18.03 10% Increase
Short $34,700.00 17.86 10% Increase
Lombardo $31,000.00 20.11 10% Increase
Phillips $24,500.00 19.95 15% Increase
Rabbit $26,500.00 18.03 15% Increase
Kanieski $29,250.00 20.11 15% Increase
Hoover $25,525.00 20.73 15% Increase
Crane $24,500.00 19.15 15% Increase
Stein $29,450.00 20.41 15% Increase