`

SQL_将对应逗号分隔的code码转为对应中文

    博客分类:
  • SQL
SQL 
阅读更多

 

由于业务需要,某些字段需要存储多个数值,是以code码逗号分隔存储的,而页面需要展示对应的中文,中文又存在系统码表内,所以需要将逗号分隔的code转为逗号分隔的中文。

 

CREATE OR REPLACE FUNCTION IDSPLITROMLIST
(
  v_list_in IN VARCHAR2,
  v_separtor IN CHAR
)
RETURN SPLIT_ID_TAB PIPELINED
AS
   v_SUB VARCHAR2(100);
   v_POS NUMBER(10,0);
   v_list VARCHAR2(4000);
   v_id_table SPLIT_ID;
BEGIN
   v_list := v_list_in;
   v_POS := INSTR(v_list, v_separtor);

   WHILE v_POS > 0
   LOOP
      BEGIN
         v_SUB := SUBSTR(v_list, 1, v_POS - 1);

         v_id_table := SPLIT_ID(v_SUB);
         PIPE ROW(v_id_table);

         v_list := SUBSTR(v_list, v_POS + 1, LENGTHB(v_list) - v_POS);

         v_POS := INSTR(v_list, v_separtor);

      END;
   END LOOP;

   v_list := LTRIM(RTRIM(v_list));

   IF length(v_list) > 0 THEN
     v_id_table := SPLIT_ID(v_list);
     PIPE ROW(v_id_table);
   END IF;

END;

 

使用方法:

(select wm_concat(to_char(tt2.PARMVALUE))

from TPTAEXGS tt2 where 1=1 

and parmtype = 'STAGEUNIT'

and tt2.PARMNAME in

(select * from table(idsplitromlist(t.STAGEUNITS, ',')))) STAGEUNITSNAME

from BPSSRRSM t

分享到:
评论

相关推荐

    sql实现多行合并一行

    由于一只股票可能对应多个研究员,因此我们需要找到一种方法将这些研究员的代码合并到一行中,且各个研究员代码之间用逗号分隔。 在Oracle中,我们可以利用`CONNECT BY`和`SYS_CONNECT_BY_PATH`函数来实现这个目标...

    sql20200215_sqlserver_sql批量插入_

    假设我们有一批员工数据,以逗号分隔的文本格式存储,如下所示: ``` 1,张三,经理,2020-01-01 2,李四,工程师,2019-06-30 3,王五,实习生,2020-02-15 ``` 我们可以使用`BULK INSERT`命令或者`INSERT INTO...SELECT`...

    listtosql 是一个简单的 Visual Studio Code 扩展,用来将一组字符串列表转成以逗号分隔的表达方式

    `listtosql` 是一款专为 Visual Studio Code(VSCode)用户设计的高效扩展,它的主要功能是帮助开发者将一组字符串列表快速转换成 SQL 语句中常用的逗号分隔值(CSV)格式。这个扩展尤其适用于那些需要频繁处理大量...

    oracle多行合并一行

    现在的需求是:对于每一个股票代码,将其对应的所有研究人员的名字合并成一个字符串,并用逗号`,`分隔,以便于快速地在页面上显示。 #### 二、解决方案及实现步骤 为了实现上述需求,我们将采用以下步骤: 1. **...

    Code加引号-csv.rar_csv_labview_sql

    在CSV文件中,每一行代表一条记录,而每个字段由逗号分隔。然而,当字段包含逗号、换行符或者需要特殊处理的数据(如空格)时,就需要使用引号来包围这些字段。例如,如果一个字段值是"John Doe, Jr.",不加引号可能...

    sql 多行合并某一列字符串拼接的示例

    在SQL中,将多行数据合并为一行,尤其是在某一列进行字符串拼接,是一项常见的需求。这通常用于汇总数据、创建报表或者为了分析目的而整合信息。本文将深入探讨如何利用SQL实现多行数据的合并,特别关注字符串拼接的...

    一个简单的调用sql loader批量数据导入程序

    SQL*Loader通过控制文件来定义数据文件的结构和映射规则,从而实现与数据库表字段的对应。 控制文件是SQL*Loader的核心,它包含了一系列的指令,如字段的名称、数据类型、长度、转换规则等。例如,你可以指定某个...

    手机号码归属地mysql

    这里的`path/to/zipcode.csv`应替换为实际CSV文件的路径,`FIELDS TERMINATED BY ','`表示字段由逗号分隔,`ENCLOSED BY '"'`表示字段值用双引号包围,`LINES TERMINATED BY '\n'`表示每行以换行符结束,`IGNORE 1 ...

    文本导入sql

    在IT领域,特别是数据库管理与开发中,将文本文件导入SQL数据库是一项常见且重要的操作。本文将基于给定的信息——“文本导入SQL”这一主题展开详细介绍。内容将涵盖标题及描述中提到的关键知识点:`BULK INSERT`...

    全国各地城市区号对照表以及自动创建城市java代码

    每一行代表一个城市的信息,字段之间用逗号分隔,最后一个字段可能是预留的空白或者有特定用途。 3. **Java代码实现**: 在Java中,可以创建一个类(如`CityCode`),包含区号、省份、地市等属性,并提供相应的...

    Sql Loader 在C#的应用实例

    在这个例子中,`N.txt` 是数据文件,每行数据由逗号分隔,字段可以被双引号包围,允许有空值。 接下来,让我们看看如何在 C# 中调用 Sql Loader。`System.Diagnostics.Process` 类是关键,它允许我们启动外部进程,...

    中国城市数据库code和经纬度.zip

    数据通常会按照特定的分隔符组织,比如逗号分隔值(CSV)或制表符分隔值(TSV)。在这个案例中,可能每行代表一个城市的信息,如城市代码、城市名称、所属层级、经度和纬度。使用文本编辑器打开文件,查看数据结构并...

    SQL Server利用bcp命令把SQL语句结果生成文本文件

    这个存储过程会生成一个名为`C:\Data\ExportedData_20220303.txt`的文件,其中包含查询结果,字段之间用逗号分隔。 总的来说,`bcp`命令结合自定义存储过程,提供了强大且灵活的数据导入导出功能,对于SQL Server...

    常用sql 语句优化

    下面将根据提供的内容,详细阐述SQL编码规范的几个关键方面。 ##### 存储过程SQL文本书写格式示例 在存储过程中,SQL语句的格式化非常重要。以下是一个存储过程中的SQL语句示例: ```sql SELECT c.dealerCode, ...

    省市区名字,拼音,区号三级数据sql,xml,text

    其次,`area.txt`文件是纯文本格式,可能是以逗号或制表符分隔的值(CSV或TSV格式)。这种格式简单且易于读取,适合于数据分析或导入到其他程序中。例如,每一行可能代表一个省市区的记录,字段与SQL文件中的相同,...

    sql server多行数据拼接的实例方法

    这是一个用户定义的函数(UDF),它接受`type`作为输入参数并返回一个由逗号分隔的`productCode`列表。 以下是自定义函数`dbo.fun`的代码: ```sql CREATE FUNCTION [dbo].[fun] ( @type nvarchar(10) ) RETURNS ...

    hive常用命令+日常

    - `FIELDS TERMINATED BY ','`:列分隔符是逗号。 - `LINES TERMINATED BY '\n'`:行分隔符是换行符`\n`。 - `STORED AS textfile`:存储格式为textfile,还可以选择其他格式如`orcfile`或`parquet`。 - `LOCATION '...

    全国邮编区号大全(数据库)

    CSV(Comma Separated Values)是一种常见的数据交换格式,以逗号分隔每个字段。全国邮编区号大全的CSV文件可以直接用Excel打开查看或编辑,也可以用编程语言如Python进行数据分析。例如: ``` 地区,城市,区县,...

    关于SQL的几道小题详解(sql进阶)

    我们需要根据行政区域码(code)判断城市属于省、市还是县,并生成对应的层级结构。这个问题可以使用递归CTE(Common Table Expression)来解决,但需要注意的是,数据库设计应该避免这种情况,即一个字段存储多个值...

Global site tag (gtag.js) - Google Analytics