2

私はこのようなテーブルを持っています

╔═══════╦════════╗
║  VOL  ║ WEIGHT ║
╠═══════╬════════╣
║ 20.00 ║ 222.00 ║
╚═══════╩════════╝

しかし、次のような2列の間でどちらの値が高いかを表示したい...

╔═══════╦════════╦═════════╗
║  VOL  ║ WEIGHT ║ TONNAGE ║
╠═══════╬════════╬═════════╣
║ 20.00 ║ 222.00 ║ 222.00  ║
╚═══════╩════════╩═════════╝
4

2 に答える 2

5

使用するGREATEST

SELECT vol, weight, GREATEST(vol, weight) Tonnage
FROM tableName

ソース

于 2013-01-16T02:59:30.470 に答える
2

に関する以前の投稿に同意しGREATESTますが、もう少し一般的な構文については、CASEうまく機能します (ほとんどの RDBMS で機能するはずです)。

SELECT vol, 
  weight, 
  case 
     when vol > weight 
     then vol 
     else weight end as Tonnage
FROM tableName

SQLフィドル

于 2013-01-16T03:18:49.113 に答える