如何求除法的商和余数

发布于 2024-10-31 07:34:56 字数 223 浏览 5 评论 0原文

我有一个 employee 表,其中包含:

emp id      Sum
------      ---
1            7
2            6

我想要一个 SQL 查询来获取将 Sum 除以 8 时的商和余数。

I have one employee table which contains:

emp id      Sum
------      ---
1            7
2            6

I want a SQL query for getting the quotient and remainder when dividing the Sum with 8.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

匿名的好友 2024-11-07 07:34:57

对于我的 PL/SQL 函数,我通常使用:

 SELECT trunc(sum/8) --- Quotient
 SELECT mod(sum/8) -- Remainder 

For my PL/SQL function I usually use:

 SELECT trunc(sum/8) --- Quotient
 SELECT mod(sum/8) -- Remainder 
霓裳挽歌倾城醉 2024-11-07 07:34:57

使用floor函数,从dual中选择floor(column_name/divisor)

use floor function, select floor(column_name/divisor) from dual

朮生 2024-11-07 07:34:56

使用整数除mod 运算符获取商和余数:

SELECT
    sum, 
    sum / 8 AS result,
    sum div 8 AS quotient,
    sum mod 8 AS remainder
FROM employee

示例输出:

sum | result | quotient | remainder
7   | 0.8750 | 0        | 7
6   | 0.7500 | 0        | 6
9   | 1.1250 | 1        | 1
10  | 1.2500 | 1        | 2
11  | 1.3750 | 1        | 3
12  | 1.5000 | 1        | 4
13  | 1.6250 | 1        | 5
14  | 1.7500 | 1        | 6
15  | 1.8750 | 1        | 7
16  | 2.0000 | 2        | 0

Use integer division and mod operators to get the quotient and remainder:

SELECT
    sum, 
    sum / 8 AS result,
    sum div 8 AS quotient,
    sum mod 8 AS remainder
FROM employee

Sample output:

sum | result | quotient | remainder
7   | 0.8750 | 0        | 7
6   | 0.7500 | 0        | 6
9   | 1.1250 | 1        | 1
10  | 1.2500 | 1        | 2
11  | 1.3750 | 1        | 3
12  | 1.5000 | 1        | 4
13  | 1.6250 | 1        | 5
14  | 1.7500 | 1        | 6
15  | 1.8750 | 1        | 7
16  | 2.0000 | 2        | 0
私藏温柔 2024-11-07 07:34:56

您的 qoutient 的返回类型是什么?如果您不关心它是浮点数还是整数(整数)。你可以试试这个。

 SELECT 
       (sum / 8) AS qoutient, 
       (sum % 8) AS reminder 
  FROM employee

What will be the return type of your qoutient? If you don't care if its a floating point or an integer(whole number). You can try this.

 SELECT 
       (sum / 8) AS qoutient, 
       (sum % 8) AS reminder 
  FROM employee
太阳男子 2024-11-07 07:34:56

您可以使用mysql函数DIV来获取qoutient
(http://dev.mysql.com/doc/ refman/5.0/en/arithmetic-functions.html#operator_div) :

SELECT 14 DIV 3 

将返回 4

应该可以解决问题

至于其余的,其他人已经回复了

You can use the mysql function DIV to get the qoutient
(http://dev.mysql.com/doc/refman/5.0/en/arithmetic-functions.html#operator_div) :

SELECT 14 DIV 3 

will return 4

It should do the trick

As for the remainder, others have replied

南冥有猫 2024-11-07 07:34:56

您可以使用 % 运算符来获取余数。这是一个例子。

SELECT Round(17 / 4) -- quotient without decimal   
SELECT 17 % 4 -- remainder

you can use the % operator to get the remainder. Here's an example.

SELECT Round(17 / 4) -- quotient without decimal   
SELECT 17 % 4 -- remainder
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文