查询sqlite:添加数字、任意数字和其他
我有一张桌子“mytable”是这样的: 我想加上每个数字的数字,条件是: 如果加法大于9,则减去9 例13=1+3=4查询sqlite:添加数字、任意数字和其他,sqlite,Sqlite,我有一张桌子“mytable”是这样的: 我想加上每个数字的数字,条件是: 如果加法大于9,则减去9 例13=1+3=4 7=0+7=755=5+5=10-9=127=9 代码: 从mytable中选择编号%9 但是,在本例中,对于值27,返回0,而不是9(值正确) 提前感谢您使用的,因此您的结果将在集合[0…(x-1)]中,其中x是您的除数。您希望将结果集移动为[1…x],但不希望将所有内容都上移一位。相反,您希望结果是“正常”mod结果,除非该结果为零,在这种情况下,您希望返回除数。要做到
7=0+7=7
55=5+5=10-9=1
27=9 代码:
从mytable中选择编号%9 但是,在本例中,对于值27,返回0,而不是9(值正确) 提前感谢您使用的,因此您的结果将在集合
[0…(x-1)]
中,其中x
是您的除数。您希望将结果集移动为[1…x]
,但不希望将所有内容都上移一位。相反,您希望结果是“正常”mod结果,除非该结果为零,在这种情况下,您希望返回除数。要做到这一点,我们需要一份案例陈述
SELECT
CASE WHEN (number % 9) = 0 THEN
9
ELSE
(number % 9)
END AS [field]
FROM
mytable
请通过向我们展示格式良好的表格来更新您的问题。请在您的问题被投票否决之前执行此操作。您确定它是>9且不是≥9?是:>9。预期和可能的结果是:1,2,3,4,5,6,7,8,9@Andreas我没听懂。我看了你对OP的评论:预期和可能的结果是:1,2,3,4,5,6,7,8,9。4.7.1.9代表什么?嗨。对于从1到90的所有数字,预期结果和可能结果为:1,2,3,4,5,6,7,8,9。这只是概括。回到实际情况,对于数字13*7*55*27,相加数字的结果应为4*7*1*9。查询。。。选择编号%9返回4.7.1.0。如何将0转换为9?谢谢。很完美,LDMJoe@Andreas我想我现在明白你在追求什么了。对于13的输入,您期望的结果是4。对于7的输入,您期望的结果是7。对于55的输入,您期望的结果是1。对于27的输入,您期望的结果是9。基于这种理解,我对答案进行了相应的编辑。