1

我需要检查所有数字是否相同。这些值来自不同的列。签名应该允许放置任意数量的列(如COALESCE(...)方法)

SELECT equality(42, 42, 42) 

应该返回true并且

SELECT equality(23, 42, 133)

应该返回false

有没有一种很好的编码方式?

当时我是这样做的:

SELECT (x1 = x2 AND x2 = x3);

但我希望有一种更优雅的方式。

4

1 回答 1

3

用这个:

SELECT GREATEST(42, 42, 42) = LEAST(42, 42, 42)
于 2012-12-03T15:25:10.473 回答