首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将列号重新排序为全部为奇数或全部为偶数的sql查询

将列号重新排序为全部为奇数或全部为偶数的sql查询
EN

Stack Overflow用户
提问于 2011-06-30 08:31:55
回答 2查看 915关注 0票数 1

假设我有一个有20行的列(它更多,但这个概念适用于20行)。现在,该列的编号是1-20。不过,我需要找出一个查询,它会将编号方案从顺序更改为仅包含偶数或奇数的顺序。

因此,例如,我只需要在表中创建一列,该列的编号为偶数或奇数。因此,在运行update查询之后,它会将我的列数据从1-20更改为2-40 (仅限偶数)或1-39 (仅限奇数)。

如果这没有意义,或者如果你想不出我需要它的原因,我很抱歉,但以一种奇怪的方式,我确实需要它。

编辑:

由于这是不合理的事实,我将尝试更多地澄清。

我有一列当前排序为1-10的列

1,2,3,4,5,6,7,8,9,10.

我想在列上执行一个更新查询,使它看起来像这样:

1,3,5,7,9,11,13,15,17,19

2,4,6,8,10,12,14,16,18,20

有没有我可以运行的update查询?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-30 08:52:31

对于偶数:

代码语言:javascript
复制
UPDATE YourTable
   SET YourColumn = YourColumn * 2;

对于奇数:

代码语言:javascript
复制
UPDATE YourTable
   SET YourColumn = YourColumn * 2 - 1;

只有当您的DBMS过早地开始检查列的唯一性时,您才会遇到麻烦,这最终是DBMS的一个缺陷(或限制)。也就是说:当'even‘更新正在运行时,可能存在一个包含值2的尚未更新的行,以及一个包含值2(最初为1)的已更新的行。如果DBMS在每一行强制唯一性,这将失败;但DBMS不应该这样做。

票数 1
EN

Stack Overflow用户

发布于 2011-06-30 08:37:34

您可以按您喜欢的任何顺序显示行。

首先对ids为偶数的行进行排序:

代码语言:javascript
复制
SELECT *
FROM yourTable
ORDER BY id MOD 2
       , id
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6528815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档