SQL 文本函数 oracle



它们是 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_department

  ID    NUMBER,
  NAME  VARCHAR2(100 BYTE)

你能帮忙吗?显示工资小于地址长度 * 1000 的员工,并将"重建列格式(姓氏 father_name)"转换为格式(姓氏 father_name )

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

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

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

t_employee 中的列NAME具有格式

姓氏 father_name或(有时)surname.name.father_name

非常感谢!

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

最新更新