暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 切换备用行集的列值

askTom 2017-05-18
227

问题描述

汤姆和团队,

我想将列中的值切换为0或1的备用行集,您能否让我知道实现此目的的最佳方法?

选择empno,dept.de ptno,0计数器
来自emp,部门
其中emp.de ptno = deptt.de ptno
由ptno部门订购;

输出应该像下面一样...
EMPNO DEPTNO计数器
7782 10 0
7934 10 0
7839 10 0
7902 20 1
7788 20 1
7566 20 1
7369 20 1
7876 20 1
7521 30 0
7654 30 0
7844 30 0
7900 30 0
7499 30 0
7698 30 0

谢谢,
Subbu

专家解答

像这样的东西?

SQL> select x.*, mod(rownum,2)
  2  from (
  3  select empno,dept.deptno
  4  from scott.emp, scott.dept
  5  where emp.deptno = dept.deptno
  6  order by dept.deptno
  7  ) x;

     EMPNO     DEPTNO MOD(ROWNUM,2)
---------- ---------- -------------
      7782         10             1
      7839         10             0
      7934         10             1
      7566         20             0
      7902         20             1
      7876         20             0
      7369         20             1
      7788         20             0
      7521         30             1
      7844         30             0
      7499         30             1
      7900         30             0
      7698         30             1
复制


如果你需要翻转1和0,然后做:

mod(rownum 1,2)
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论