如何找到 SQLite 中变量定义的指数的值 10 [重复]

Posted

技术标签:

【中文标题】如何找到 SQLite 中变量定义的指数的值 10 [重复]【英文标题】:How do I find the value of 10 to the exponent defined by a variable in SQLite [duplicate] 【发布时间】:2019-10-28 16:35:16 【问题描述】:

我在表中有一个列,我想找到 10 与该列中的值定义的指数的值。

例如比如说,该表称为“表 1”。该列称为“指数”

表1

指数

3

2

2

4

我想执行一个涉及到的数学运算

10 ^ table1.exponent

我该怎么做?

我试过了——

Power(10, table1.exponent)

但是SQLite不支持幂函数。

结果是:

1000

100

100

10000

但是,我不需要返回表。我需要在查询的数学方程式中使用这些。

【问题讨论】:

你可以在 SQLLite 中注册你自己的 POWER 函数:见***.com/a/13190146/8357168 尝试使用CTE 我尝试添加anwer,但不知道为什么我不能 如果你有兴趣,我已经在这里发布了我的答案:***.com/questions/13190064/… 【参考方案1】:

假设变量是一个整数,那么只使用case 表达式怎么样:

select (case exponent
            when 0 then 1
            when 1 then 10
            when 2 then 100
            when 3 then 1000
            when 4 then 10000
            when 5 then 100000
            when 6 then 1000000
            when 7 then 10000000
            when 8 then 100000000
        end)

添加power() 函数肯定更加通用,但这可能会满足您的特定需求。

【讨论】:

以上是关于如何找到 SQLite 中变量定义的指数的值 10 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

在 Julia 中使用变量作为指数时遇到问题

c 改变双精度数的指数

指针初学

SQLite如何从分隔列文本中对另一个表中的值求和?

指数分布与泊松分布的关系

如何通过命令行窗口查看sqlite数据库文件