开发者社区 问答 正文

跨列的SQL绝对值

我有一个看起来像这样的表:

词大贵智能快

狗9 -10 -20 4 教授2 4 40 -7 法拉利7 50 0 48 阿拉斯加州10 0 1 0 咬-3 0 0 0 +和-值与单词相关联,因此,教授是聪明的,狗不是聪明的。阿拉斯加很大,占与其条目相关的总价值的一部分,而gna是相反的。

是否有一种很好的方法来获取距离零最远的数字的绝对值,以及是否有一些标记确定绝对值= / =值?相关地,我如何计算给定值的结果是否相对于其他值成比例地大?我会写一些东西来格式化输出,以达到这样的效果:“狗:不聪明,可能不贵;教授聪明;法拉利:快速,昂贵;阿拉斯加:大;:可能小。” (格式不是问题,只是说明,我停留在基础查询上。)

此外,该程序的其余部分是python,因此,如果有任何带有常规dbapi模块或更抽象的模块的python解决方案,则可以提供任何帮助。

问题来源于stack overflow

展开
收起
保持可爱mmm 2019-11-18 17:37:51 340 分享 版权
1 条回答
写回答
取消 提交回答
  • 离零最远的绝对值:

    select max(abs(mycol)) from mytbl 如果值为负,则将为零:

    select n+abs(mycol) from zzz where abs(mycol)=(select max(abs(mycol)) from mytbl);

    2019-11-18 17:38:01
    赞同 展开评论
问答分类:
问答地址: