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 回答