-1

它们是 2 张桌子

t_employee

  ID             NUMBER,
  DEPARTMENT_ID  NUMBER,
  CHIEF_ID       NUMBER,
  NAME           VARCHAR2(100 BYTE),
  SALARY         NUMBER,
  BIRTH_DATE     DATE,
  ADDRESS        VARCHAR2(200 BYTE),
  STATUS         VARCHAR2(1 BYTE)

t_部门

  ID    NUMBER,
  NAME  VARCHAR2(100 BYTE)

你能帮我吗?显示工资小于地址长度 * 1000 的员工并将列格式(姓氏父亲姓名)重建为格式(姓名姓氏父亲姓名)

1部分 - 显示工资小于地址长度* 1000的员工 - 是

select name from t_employee where t_employee.salary < LENGTH(ADDRESS)*1000;

但是如何更改格式文本数据???

NAME表中的列t_employee具有格式

姓氏父亲名称或(有时)surname.name.father_name

非常感谢!

4

1 回答 1

0
or simple question: column has format a b c - need select b a c. Which function need? 

我猜你必须使用空格作为分隔符来分割字符串,然后排列分割的部分。而且我认为没有用于拆分字符串的内置函数。相反,您可以创建一个 UDF 来完成工作。使用substrinstr功能来做同样的事情。如果您需要用于拆分字符串的示例代码,请使用以下链接:

https://bitbucket.org/janihur/orasql-ex/src/8a68a1d724f1/split.sql

于 2013-10-25T11:34:55.670 回答