SQL选择间隔时间

时间:2016-08-17 15:42:02

标签: sql select intervals between

我有一份完成培训课程的人员名单。我需要选择所有以5为间隔完成会话的人。因此,当一个人达到5,10,15,20个会话等时,列表只会拉行。

Name           Sessions
John Smith     5
Bill Smith     10
Joe Smith      15

有没有快速的方法可以做到这一点,或者我必须

SELECT WHERE sessions = 5 OR 10 OR 15

4 个答案:

答案 0 :(得分:5)

试试这个:

SELECT col FROM table WHERE sessions % 5 = 0

答案 1 :(得分:1)

使用RDBMS中的modulo / remainder运算符。

例如在 postgres

var nodes = partition.nodes(json)
      .filter(function(d) {
      return (d.dx > 0.005); // 0.005 radians = 0.29 degrees
      });

答案 2 :(得分:0)

您可以使用模数运算符(%),如下所示:

SELECT Stuff FROM Table WHERE (sessions % 5) = 0

模运算符计算余数。当sessions的余数除以5时,这意味着sessions可以被5整除。

答案 3 :(得分:0)

我认为你的意思是他们所做的会话数量可以被5整除。

SELECT P.PersonId, Count(S.SessionId)
FROM Person P
INNER JOIN Sesssion S ON S.PersonId = P.PersonId
GROUP BY P.PersonId
HAVING Count(S.SessionId) % 5 = 0

HAVING是重要的一点。