【问题标题】:How to select odd or even items from a row in SQL?如何从 SQL 中的一行中选择奇数项或偶数项?
【发布时间】:2013-09-19 05:57:04
【问题描述】:

我只需要偶数或奇数项,所以我发现模运算,这不起作用

SELECT  * FROM table ORDER BY id WHERE MOD (num, 2) = 1 ASC;

请帮帮我,我是 sql 新手,因为我在这方面做得不多。

【问题讨论】:

    标签: sql modulus operation


    【解决方案1】:
    SELECT * 
    FROM table 
    WHERE MOD (num, 2) = 1 
    ORDER BY id ASC;
    

    将返回 num 的所有奇数值。

    【讨论】:

    • 感谢您的快速回答!
    • 如果你有重复的值,你应该添加 DISTINCT 选项。
    【解决方案2】:

    偶数

     where ([num]% 2) = 0
    

    奇数

     where ([num]% 2) <>0
    

    【讨论】:

      【解决方案3】:
      SELECT * FROM table WHERE MOD(num, 2) = 1 ORDER BY id ASC;
      

      在根据 where 条件获取 sql server 的最终结果集之后,只有我们可以应用任何排序 ASCDESC

      【讨论】:

        【解决方案4】:

        对于偶数,查询:

        SELECT 
          * 
        FROM 
          table_name 
        WHERE 
          MOD(NUM, 2) = 0 
        ORDER BY 
          ID ASC;
        

        对于奇数,查询:

        SELECT 
          * 
        FROM 
          table_name 
        WHERE 
          MOD(NUM, 2) != 0 
        ORDER BY 
          ID ASC;
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-06-28
          • 2017-11-22
          • 1970-01-01
          • 2020-06-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-08-01
          相关资源
          最近更新 更多