区分单个Number列中的两个值

时间:2010-10-03 08:35:48

标签: sql oracle

我有一个只有一个数字字段的表:[value NUMBER(12.0)]

我想存储这两种非负数。

A型:(非负数列表)

B型:(另一个非负数列表)

我只有这一张桌子。在不进行任何DML更改的情况下,我可以存储两种类型的数字,但有一些区别。

我想过使用sign来区分,但是在0的情况下会失败。

谢谢, 三位一体

1 个答案:

答案 0 :(得分:3)

您可以存储a~b。这解决了零问题,因为~0是-1。

表达式~b表示按位而不是b ,相当于-b - 1

但是如果可能的话,我强烈建议您更改架构。对于那些在你之后接管系统的人来说,这种黑客行为可能会成为维护的噩梦。