T - SQL in ORACLE functions

Use the T - SQL functions in ORACLE too, so you can write a script version that works in SYBASE, SQL SERVER and ORACLE when need to use the following functions:

ceiling, charindex, dateadd, datediff, datename, datepart, day, db_id, db_name, getdate, host_id, host_name, left, len, month, replicate, right, space, str, str_replace, tips, substring, suser_id, suser_name, user_id, user_name and year.

The file [comp_tsql_ORA_schema.txt | http://forums.databasejournal.com/attachment.php?attachmentid=564 & d = 1258547015] creates the tablespace and scheme to place objects and file [comp_tsql_ORA.txt | http://forums.databasejournal.com/attachment.php?attachmentid=569 & d = 1259256898] create the features in the new schema. They will be available for any diagram of the oracle instance.

I hope this helps!
Any suggestion, please contact.
aklein2003

Published by: user1958693 on 11/26/2009 10:16

This makes sense if you migrate an application from sql server, oracle, and if a lot of t - sql functions is used in the application code that you don't want to bother with...

Tags: Database

Similar Questions

  • equivalent of CLRSplitSting function for sql server Oracle

    Hello friends,

    I have a query in SQL Server - which becomes data.

    Select addl_info_id, sort_seq, code, row_data, addl_info_group_id, group_sort_seq, group_row_data from dbo. CLRSplitString('2406081,2410381,2427008,2430449,2466981,2495083,1586420,2406081,2410381,2427008,2430449,2466981,2495083,1586420','',',') x v join ein_addl_info_v on x.col1 = v.addl_info_id order by sort_seq
    We have same data in oracle too, so I converted the query above to sql to ORACLE like this server...


    Select addl_info_id, sort_seq, code, row_data, addl_info_group_id, group_sort_seq, group_row_data from (with t as)
    Select '2406081,2410381,2427008,2430449,2466981,2495083,1586420,2406081,2410381,2427008,2430449,2466981,2495083,1586420', ",","double str
    Select regexp_substr(str,'[^,]+',1,level) sub_str *) t connect by level < = regexp_count (str, ',') + 1) x *.

    Join cnh_cs_targ_csce_eur_1.ein_addl_info_v v x.sub_str = v.addl_info_id order of sort_seq


    but I don't get all the data. Can someone check if the query oracle above is equivalent to the above SQL query.

    Thank you/Kumar

    Published by: kumar73 on February 15, 2013 08:47

    So your query:

    select  addl_info_id,
            sort_seq,
            code,
            row_data,
            addl_info_group_id,
            group_sort_seq,
            group_row_data
      from      xmltable(
                         'ora:tokenize($str,",")'
                         passing ',2406081,2410381,2427008,2430449,2466981,2495083,1586420,2406081,2410381,2427008,2430449,2466981,2495083,1586420' as "str"
                         columns col1 varchar2(2000) path '.'
                        ) x
            join
                ein_addl_info_v v
              on x.col1 = v.addl_info_id
      order by sort_seq
    /
    

    SY.

  • Export as .xls. Classic report type: SQL (body of function from PL/SQL returning the SQL) query

    Hey guys,.

    I'm using version 4.2.6 apex. The theme is 26.

    IM also using Listener Oracle APEX.

    I can print my classic report in PDF or CSV format.

    But I need to export it as a .xls extension.

    Report type: SQL (body of function from PL/SQL returning the SQL) query

    I need is like this cause my 'where' clause type is dynamic.

    Look at using this method: Tom's Blog: a non-standard export excel 2010 (.xlsx)

    I do something similar for downloads to excel in my projects...

    Thank you

    Tony Miller
    Software LuvMuffin
    Ruckersville, WILL

  • Problem with migration SQL Server Oracle 11.2 2012 DB using SQL Developer Migration workbench

    Hello

    I have a problem when migrating SQL Server Oracle 11.2 2012 using SQL Developer Migration workbench, hope that someone had the same problem before and can give same advide...

    I use SQL Developer Version 4.0.1.14 and Oracle Database 11 g Enterprise Edition Release 11.2.0.1.0. and last jtds - 1.3.

    I created the schema migration_repo, privileges, connected to the third part of Db (SQL Server) and begin a trial with assistant. In the first step of the model to Capture, I get the message from the:

    "Company Capture Capture failed.  Refer to the table MIGRLOG in the repository for more details ".

    But MIGRLOG is empty.

    Here is my log:

    <? XML version = "1.0" encoding = "windows-1252" standalone = 'no '? >

    < Log >

    account <>

    < date > 2014-03-16T 20: 49:17 < / date >

    oracle.dbtools.migration.workbench.core.MigrationLogResourceBundle < recorder > < / recorder >

    < level > SEVERE < / level >

    oracle.dbtools.migration.workbench.core.logging.MigrationLogUtil < class > < / class >

    < message > Capture

    Capture Enterprise

    Capture failure.  Refer to the MIGRLOG table in the repository for more details < / message >

    oracle.dbtools.migration.workbench.core.ui.FullMigrateTask.doOnlineEnterpriseCapture(FullMigrateTask.java:758) < param > < / param >

    oracle.dbtools.migration.workbench.core.ui.FullMigrateTask.doCapture(FullMigrateTask.java:601) < param > < / param >

    oracle.dbtools.migration.workbench.core.ui.FullMigrateTask.doMaskBasedActions(FullMigrateTask.java:400) < param > < / param >

    oracle.dbtools.migration.workbench.core.ui.FullMigrateTask.doWork(FullMigrateTask.java:314) < param > < / param >

    oracle.dbtools.migration.workbench.core.ui.FullMigrateTask.doWork(FullMigrateTask.java:147) < param > < / param >

    oracle.dbtools.raptor.backgroundTask.RaptorTask.call(RaptorTask.java:193) < param > < / param >

    java.util.concurrent.FutureTask.run(FutureTask.java:262) < param > < / param >

    oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$ (RaptorTaskManager.java:554) < param > RaptorFutureTask.run < / param >

    java.util.concurrent.Executors$ (Executors.java:471) < param > RunnableAdapter.call < / param >

    java.util.concurrent.FutureTask.run(FutureTask.java:262) < param > < / param >

    java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) < param > < / param >

    java.util.concurrent.ThreadPoolExecutor$ Worker.run (ThreadPoolExecutor.java:615) < param > < / param >

    java.lang.Thread.run(Thread.java:744) < param > < / param >

    oracle.dbtools.migration.workbench.core.logging.LogInfo@68e69a < param > < / param >

    < exception >

    < message > oracle.dbtools.migration.workbench.core.ui.FullMigrateTask$ FullMigrateTaskException: Capture

    Capture Enterprise

    Capture failure.  Refer to the MIGRLOG table in the repository for more details < / message >

    < frame >

    oracle.dbtools.migration.workbench.core.ui.FullMigrateTask < class > < / class >

    < line > 758 < / line >

    < / framework >

    < frame >

    oracle.dbtools.migration.workbench.core.ui.FullMigrateTask < class > < / class >

    < line > 601 < / line >

    < / framework >

    < frame >

    oracle.dbtools.migration.workbench.core.ui.FullMigrateTask < class > < / class >

    line 400 > of < < / line >

    < / framework >

    < frame >

    oracle.dbtools.migration.workbench.core.ui.FullMigrateTask < class > < / class >

    < line > 314 < / line >

    < / framework >

    < frame >

    oracle.dbtools.migration.workbench.core.ui.FullMigrateTask < class > < / class >

    < line > 147 < / line >

    < / framework >

    < frame >

    oracle.dbtools.raptor.backgroundTask.RaptorTask < class > < / class >

    < line > 193 < / line >

    < / framework >

    < frame >

    java.util.concurrent.FutureTask < class > < / class >

    < line > 262 < / line >

    < / framework >

    < frame >

    oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$ RaptorFutureTask < class > < / class >

    < line > 554 < / line >

    < / framework >

    < frame >

    java.util.concurrent.Executors$ RunnableAdapter < class > < / class >

    < line > 471 < / line >

    < / framework >

    < frame >

    java.util.concurrent.FutureTask < class > < / class >

    < line > 262 < / line >

    < / framework >

    < frame >

    java.util.concurrent.ThreadPoolExecutor < class > < / class >

    < line > 1145 < / line >

    < / framework >

    < frame >

    java.util.concurrent.ThreadPoolExecutor$ Worker < class > < / class >

    < line > 615 < / line >

    < / framework >

    < frame >

    java.lang.Thread < class > < / class >

    < line > 744 < / line >

    < / framework >

    < / exception >

    < / recording >

    account <>

    < date > 2014-03-16T 20: 49:17 < / date >

    oracle.dbtools.migration.workbench.core.MigrationLogResourceBundle < recorder > < / recorder >

    WARNING < level > < / level >

    oracle.dbtools.migration.workbench.core.ui.FullMigrateTask < class > < / class >

    <>error message: ORA-06550: line 1, column 14:

    PLS-00201: identifier ' SS2K5ALLPLATFORM. STAGECAPTURE' must be declared

    ORA-06550: line 1, column 7:

    PL/SQL: Statement ignored

    : FAILED: Database Migration: FAILURE < / message >

    oracle.dbtools.migration.workbench.core.logging.LogInfo@1e2c9b99 < param > < / param >

    < / recording >

    I try with model db (DB empty, just a single table), but the error is same. However, if I try to copy the acronym tabele from SQL Server to Oracle it works fine...

    I guess it's something with the configuration, but beacause I am new in Oracle still have no idea...

    Any help would be much appreciated

    I thank in advance

    Stefan

    Hello Stefan,

    did you create the repository Migration of your database to Oracle (Tools-> Migration-> repository management)?

    The SS2K5ALLPLATFORM package is usually created when you add the migration of the Oracle database repository and it contains the function StageCapture.

    So please make sure that you have created a repository of migration in an Oracle database and associate it with the first step of your migration.

    -Klaus

  • MySQL to Oracle using LKM SQL to Oracle, poor performance

    Hello

    I'm on the underside of technology.

    I'm try to use ODI to import data from MySQL to Oracle using the LKM SQL to Oracle, it works well for small amounts of documents but once volumes go higher it performs very badly.

    I'm replacing an integration of existing HS dblink to 44 seconds and ODI is 9 minutes.

    The MySQL and Oracle DB are on the same host with an autonomous ODI agent on the same host.

    MySQL 5.6.21

    Oracle 11.2.0.4

    Oracle Data Integrator 12.1.3

    I may try a different approach to dumping the MySQL table to a flat file and import from external table or sqlldr but y at - it a way to make the LKM SQL for Oracle perform better?

    Hello

    This problem has been resolved.

    I was setting the table sizes in batches on the data source server, after you set the values on the target data server is it now works as expected.

    Using a value of 5,000 for the two tables has reduced the operating time of 9 minutes to about 40 seconds.

  • How to identify columns that have the same data in a SQL query or function?

    Deal all,

    How to identify columns that have the same data in a SQL query or function? I have the sample data as below

    DEPT_IDEMP_IDCome on
    !CITYSTATECOUNTRY111 June 1983DELHIHUMAN RESOURCESIndia1218 January 1987DELHIHUMAN RESOURCESIndia1328 November 1985DELHIHUMAN RESOURCESIndia144 June 1985DELHIHUMAN RESOURCESIndia255 June 1983MUMBAIHDIndia266 June 1983MUMBAIHDIndia277 June 1983MUMBAIHDIndia288 Jun. 1983MUMBAIHDIndia399. June 1983GURGAONDLIndia31010 June 1983GURGAONDLIndia

    Now, I want to Indify columns that have the same data for the same Department ID.

    Is it possible in sql unique or do I have to write the function for this? Pls Help how to write?

    Thanks in advance.

    You can try this?

    WITH T1)

    DEPT_ID, EMP_ID, DATE OF BIRTH, CITY, STATE, COUNTRY

    ), ()

    SELECT 1, 1, TO_DATE('1.) June 1983', 'JJ. LUN. (YYYY'), 'DELHI', 'HR', 'INDIA' OF THE DUAL UNION ALL

    SELECT 1, 2, TO_DATE('18.) January 1987', 'JJ. LUN. (YYYY'), 'DELHI', 'HR', 'INDIA' OF THE DUAL UNION ALL

    SELECT 1, 3, TO_DATE('28.) November 1985', 'JJ. LUN. (YYYY'), 'DELHI', 'HR', 'INDIA' OF THE DUAL UNION ALL

    SELECT 1, 4, TO_DATE('4.) June 1985', 'JJ. LUN. (YYYY'), 'DELHI', 'HR', 'INDIA' OF THE DUAL UNION ALL

    SELECT 2.5, TO_DATE('5.) June 1983', 'JJ. LUN. (YYYY'), 'BOMBAY', 'HD', 'INDIA' OF THE DUAL UNION ALL

    SELECT 2.6, TO_DATE('6.) June 1983', 'JJ. LUN. (YYYY'), 'BOMBAY', 'HD', 'INDIA' OF THE DUAL UNION ALL

    SELECT 2.7, TO_DATE('7.) June 1983', 'JJ. LUN. (YYYY'), 'BOMBAY', 'HD', 'INDIA' OF THE DUAL UNION ALL

    SELECT 2.8, TO_DATE('8.) June 1983', 'JJ. LUN. (YYYY'), 'BOMBAY', 'HD', 'INDIA' OF THE DUAL UNION ALL

    SELECT 3, 9, TO_DATE('9.) June 1983', 'JJ. LUN. (YYYY'), 'GURGAON', 'DL', 'INDIA' OF THE DUAL UNION ALL

    SELECT 3.10, TO_DATE('10.) June 1983', 'JJ. LUN. (YYYY'), 'GURGAON', 'DL', 'INDIA' OF THE DOUBLE)

    SELECT DEPT_ID,

    RTRIM (XMLAGG (XMLELEMENT(A,VALS||',')). Extract ('//Text ()'), ',') COLUMNS_WITH_DUPLICATE

    DE)

    SELECT * FROM)

    SELECT DEPT_ID,

    EMP_ID,

    Date of birth

    CITY,

    STATE,

    COUNTRY

    DE)

    SELECT DEPT_ID,

    EMP_ID,

    Date of birth

    CITY,

    STATE,

    COUNTRIES,

    COUNT (*) OVER(PARTITION BY DEPT_ID ORDER BY EMP_ID DESC,DOB DESC,CITY DESC,STATE DESC, COUNTRY DESC) RN

    DE)

    SELECT DEPT_ID,

    CASE WHEN(CEID>1) AND THEN 'YES' ELSE 'NO' END AS EMP_ID.

    CASE WHEN(CDOB>1) THEN 'YES' ELSE 'NO' END AS DATE OF BIRTH,

    CASE WHEN(CCITY>1) AND THEN 'YES' ELSE 'NO' END AS CITY.

    CASE WHEN(CSTATE>1) AND THEN 'YES' ELSE 'NO' END AS STATE.

    CASE WHEN(CCOUNTRY>1) THEN 'YES' ELSE 'NO' END AS A COUNTRY

    DE)

    SELECT DISTINCT

    DEPT_ID,

    CEID,

    CDOB,

    CITY,

    CSTATE,

    CCOUNTRY

    DE)

    SELECT DEPT_ID,

    COUNT (*) TO THE CEID (DEPT_ID PARTITION, EMP_ID),.

    COUNT (*) ON CDOB (DEPT_ID SCORE, DATE OF BIRTH),

    COUNT (*) ON THE CITY (DEPT_ID PARTITION, CITY),

    COUNT (*) ON CSTATE (DEPT_ID PARTITION, STATE).

    COUNT (*) ON CCOUNTRY (DEPT_ID, COUNTRY PARTITION)

    FROM T1)))

    WHERE RN = 1)

    UNPIVOT (CLO FOR (VALS) IN (EMP_ID, DATE OF BIRTH, CITY, STATE, COUNTRY)))

    WHERE COLS = "YES".

    DEPT_ID GROUP;

    OUTPUT:

    DEPT_ID COLUMNS_WITH_DUPLICATE
    --------- ------------------------

    1 CITY, COUNTRY, STATE
    2 CITY, COUNTRY, STATE
    3 CITY, COUNTRY, STATE

    Post edited by: Parth272025

  • How to use the concepts Advanced PL/SQL in oracle reports and forms

    Hi all

    Can anyone suggest me how to use the Concepts(nested tables,PAA,Varrays,Objects...) Advanced PL/SQL in Oracle forms.

    In fact, I created a Table whose column of type Varray. now, I want to create an element in oracle forms on this field. can anyone suggest me how to proceed.

    Thank you
    Kumar

    Hello

    Take a look at this one:
    http://SheikYerbouti.developpez.com/tutoforms10g/tutoforms10g.htm
    especially the chapter on the block that contains a collection of (2.3.3). The sample is built around a nested table, but you get the idea to adapt to work with a varray.

    Kind regards
    Alex

    If someone useful or appropriate please mark accordingly.

  • Failed to open oracle functions after R12 installation on windows 2008 64 bit

    Hi guys
    I installed oracle R12.1.1 on windows server 2008 R2 64-bit, then the application opens but all forms of oracle functions cannot open, the message appear frm-92101, I try the solutions in the net, but no effect and I get another windows which and this message appears when trying to open an another oracle functions
    ""
    program currently running on this computer is attempting to display a message, then
    title of the message:
    E:\oracle\VIS\apps\tech_st\10.1.3\appsutil\jdk\bin\java '-serv ".


    This problem come when a program is not completely compatible with windows
    ""
    This message when you start windows too, but the path of java inside files of oracle applications, please help me if oracle r12.1.1 compatible with win 2008 64 bit or not?

    I installed oracle R12.1.1 on windows server 2008 R2 64-bit, then the application opens but all forms of oracle functions cannot open, the message appear frm-92101, I try the solutions in the net, but no effect and I get another windows which and this message appears when trying to open an another oracle functions

    Direct installation of R12 on Windows 2008 64 bit is not supported. You install it on a Windows 32-bit operating system, and then migrate to Windows 64 - bit.

    Oracle E-Business Suite installation and upgrade version Notes 12 (12.1.1) for Microsoft Windows Server (32-bit) [ID 761567.1]
    Migration Oracle E-Business Suite R12 to Microsoft Windows Server 2008 R2 [ID 1188535.1]

    Thank you
    Hussein

  • Connect to a Postgre SQL to oracle database.

    I'm trying to connect to a database of Postgre SQL of Oracle SQL Developer, I downloaded the drivers from http://jdbc.postgresql.org/ if the form of a jar and showed up at them in the section preferences drivers third party JDBC. Should I have a new tab connections? If someone could help it would be much appreciated.

    I don't think that Postgres is supported.

  • The HTML that is returned by an Oracle function...

    What is the best way to view the HTML code that is returned by an Oracle function (Apex 3.2.1.00.10)?

    I tried in many ways...

    I don't want to have a visible, but even when I do that, the first returned row Editor:

    < b > text < /b >

    It shows in "BOLD", but for some reason, it escapes from the second < \b > and the fact like that "& lt;" \b & gt; "so it's show < \b > and everything is"BOLD"...

    tward wrote:
    What is the best way to view the HTML code that is returned by an Oracle function (Apex 3.2.1.00.10)?

    I tried in many ways...

    I don't want to have a visible, but even when I do that, the first returned row Editor:

    a text

    It shows in "BOLD", but for some reason, it escapes from the second <\b>and done like this '< \b >"so he showed <\b>and everything is"BOLD"...

    you have the backslash "close tag"... it should be
    < b > text < /b >

    Note the slash!

  • Conversion in Oracle function.

    Hello

    So here's the scenario I have. I was wondering if there is any oracle function provides or is it possible that I could achieve this goal.
    CREATE OR REPLACE procedure TestA 
    (
          partnumber               IN  number,
          partsubnum               IN  varchar2,
          errstring             OUT varchar2
    ) as
    
    --  Declare local variables
    
    ll_inputpartnum varchar2(100);
    
    
    Begin
    
        ll_inputpartnum := partnumber || partsubnum; -- Concatinate partnumber and partsubnum
      -- Will need to convert this variable to number.
    
        TestB.Process(ll_inputpartnum,parameter2, s_errstring, errnum); --ll_inputpartnum must be of type number 
         if  errnum <> compkg.success then
           errstring := s_errstring;
           return;
         end if;
      
      
    Exception 
        When others then 
        Null;    
    End;
    /
    I don't have the ability to change anything about how to TestB.Process.

    There are therefore two problem I am trying to solve in this scenario.

    First, the input parameter - ll_inputpartnum in TestB.Process takes input of only of number type. So I need to convert somehow the concatenated in full ll_inputpartnum.

    Second problem, procedure TestB.Process - after completing his treatment, goes from ll_inputpartnum to the third procedure. Let's say TestC procedure. TestC procedure, so I need to break in again value concatenated in original partnumber and partsubnum.

    The value concatenated - ll_inputpartnum does not change through this process.

    So, I'm trying to understand the best way to approach this situation.

    Thank you

    Published by: Ramses on May 25, 2010 13:18

    with a function like (using also the package of William)

    function combine_parts(p_partnum in integer,p_partsubnum in varchar2) return integer is
      l_length pls_integer := 5;  /* adjust to the maximum possible length of partsubnum */
      hex_val  varchar2(5) := '';
    begin
      if length(p_partsubnum) > l_length then
        return 0;
      end if;
      for i in 1 .. l_length loop
        hex_val := hex_val || to_base(ascii(substr(lpad(p_partsubnum,l_length,chr(0)),i,1)),16)
      end loop;
      return p_partnum * power(256,l_length) + to_decimal(hex_val,16);
    end;
    

    You can simply

    ll_inputpartnum := combine_parts(partnum,partsubnum);
    

    and finally, the parameter ll_inputpartnum can be connected to the appropriate process
    you will need another function to find partnum and partsubnum in another process, because it will be just ll_inputpartnum

    function concatenated_parts(p_number in integer,p_separator in varchar2 default '|') return varchar2 is
      l_length pls_integer := 5;  /* adjust to the maximum possible length of partsubnum */
      hex_val  varchar2(5);
      chr_val  varchar2(5) := '';
      l_partnum integer;
    begin
      l_partnum := trunc(p_number / power(256,l_length));
      hex_val := to_base(p_number - l_partnum * power(256,l_length),16);
      if length(hex_val) > l_length then
        return '';
      end if;
      for i in 1 .. l_length loop
        chr_val := chr_val || chr(to_decimal(substr(hex_val,i,1),16));
      end loop;
      return to_char(l_partnum) || p_separator || chr_val;
    end;
    

    Concerning

    Etbin

    p.s. features are not tested (no database home)

  • Convert or map Typedonnees decimal Transact-SQL for Oracle Number data type?

    MSSQL 2005
    Oracle 10.2 g

    In a MSSQL table, I have a column with the data type set on (decimal (1.0), null) with the values of line-1. (695 lines in total)

    In the Oracle table, the proposed mapped column is a number data type. When I import data, I received 695 errors with the message "invalid value for the field. How to properly convert or map Decimal (MSSQL) Transact-SQL for Oracle Number data type for a negative value?

    Thank you.

    How do you load data into Oracle? What tool or programming language you are using? Can you post something cause what you stated in your post should work, but there may be some ODBC, or other type of conversion factors to be taken into account.

     > create table t1 (field1  number(1,0));
    
    Table created.
    
     > insert into t1 values (-1);
    
    1 row created.
    
    UT1 > select * from t1;
    
        FIELD1
    ----------
            -1
    

    HTH - Mark D Powell.

  • Covert SybaseIQ SQL for Oracle

    Hi all

    Can come a help me next secret SybaseIQ SQL for Oracle.

    Select
    t.Sales_rep_id as sales_rep_id
    CASE when
    length (if t.market_id is null then "endif) = 0 or t.market_id is null
    then 0 otherwise cast (t.market_id as integer) end UP as market_id
    "TENDER" as feature_category
    null as is_override_tax_exempt
    null as audit_entered_by_user of ODS. POS_ODS_TENDER t;

    Thank you

    user2281943 wrote:
    Hi all

    Can come a help me next secret SybaseIQ SQL for Oracle.

    Select
    t.Sales_rep_id as sales_rep_id
    CASE when
    length (if t.market_id is null then "endif) = 0 or t.market_id is null
    then 0 otherwise cast (t.market_id as integer) end UP as market_id
    "TENDER" as feature_category
    null as is_override_tax_exempt
    null as audit_entered_by_user of ODS. POS_ODS_TENDER t;

    Thank you

    Try this

    select t.Sales_rep_id as sales_rep_id
           , CASE when length(decode(t.market_id,null,'')) = 0 or t.market_id is null
                  then 0
                  else to_number(t.market_id)
             END as market_id
           , 'TENDER' as feature_category
           , null as is_override_tax_exempt
           , null as audit_entered_by_user
      from ODS.POS_ODS_TENDER t;
    
  • Oracle, equivalent to the SQL SERVER CLRClipString function

    Hello friends,

    I am running the following sql query in SQL SERVER successfully...

    Select * from
    CLRSplitString ('33, 54, 105, 148, 149, 163, 165, 179, 193, 195, 201, 202, 234, 239, 279, 282, 297, 299, 329, 332, 350, 415, 417, 439, 440, 500, 552, 570, 589, 603, 628, 655', ", ',') x
    Join dbo. PART_ADDL_INFO_NAMES_V v x.col1 = v.addl_info_name_id

    I would like to implement the same ORACLE sql statement.

    I created the function that takes the comma-separated string and display as a single column... I want emerging in oracle as a sql statement...


    create or replace function str2tbl
    (p_str in varchar2)
    p_delim in varchar2 default '.')
    return myTableType
    as
    long l_str p_str default. p_delim;
    number of l_n;
    myTableType l_data: = myTabletype();
    Start
    loop
    l_n: = instr (l_str, p_delim);
    When the output (nvl(l_n,0) = 0);
    l_data.extend;
    l_data (l_data.count): = ltrim (rtrim (substr(l_str,1,l_n-1)));
    l_str: = substr (l_str, l_n + length (p_delim));
    end loop;
    L_data return;
    end;
    /

    DECLARE
    v_array mytabletype;
    BEGIN
    v_array: = str2tbl ('10.01.03.04.234');
    BECAUSE me in 1... v_array. COUNTING LOOP
    DBMS_OUTPUT. Put_line (v_array (i));
    END LOOP;
    END;
    /
    10
    01
    03
    04
    234


    appreciate your help...

    Thank you

    If you need to split a single string:

    with t as (
               select '33,54,105,148,149,163,165,179,193,195,201,202,234,239,279,282,297,299,329,332,350,415,417,439,440,500,552,570,589,603,628,655' str from dual
              )
    select  regexp_substr(str,'[^,]+',1,level) sub_str
      from  t
      connect by level <= regexp_count(str,',') + 1
    /
    
    SUB_STR
    -------------------
    33
    54
    105
    148
    149
    163
    165
    179
    193
    195
    201
    
    SUB_STR
    -------------------
    202
    234
    239
    279
    282
    297
    299
    329
    332
    350
    415
    
    SUB_STR
    -------------------
    417
    439
    440
    500
    552
    570
    589
    603
    628
    655
    
    32 rows selected.
    
    SQL> 
    

    SY.
    PS REGEXP_COUNT is available in 11g only. If you are using 10g:

    with t as (
               select '33,54,105,148,149,163,165,179,193,195,201,202,234,239,279,282,297,299,329,332,350,415,417,439,440,500,552,570,589,603,628,655' str from dual
              )
    select  regexp_substr(str,'[^,]+',1,level) sub_str
      from  t
      connect by level <= length(regexp_replace(str,'[^,]')) + 1
    /
    
  • Call PL/SQL and Oracle ADF Application reports Open functions

    Hi all

    My company will convert some projects of Oracle forms to Oracle ADF, so we must call the PL/SQL functions and open the Oracle reports (which are already exist) the ADF application.

    Thank you..

    Jack.N

    Hi Jack.N,

    call the functions PL / SQL---> http://sameh-nassar.blogspot.com/2010/01/create-plsql-function-and-call-it-from.html

    Open Oracle reports---> http://radio-weblogs.com/0137094/2008/06/15.html

    There is integration between the ADF and other systems in---> http://wiki.oracle.com/page/ADF+Integration

    Sameh Nassar

Maybe you are looking for

  • Need information about Equium A60

    HelloI'm looking to upgrade of RAM on my laptop which is an Equium A60 (PSA67E-001004NO). I need to know how fast my motherboard supports... I posted a question a while back and got the impression that my laptop can take up to 533 mhz, but I confirm

  • Cannot install Vista SP1

    I tried ALL the solutions proposed and it will NOT be installed. It downloads fine, but after "installation" it fails. error code FFFF 0x8000. I have the stand alone version and the version of the SP1 updates. Can someone help me, please? I am prepar

  • HP probook 440 g 2: 1721 error occurs when I try to install the client manager of HP security

    Error code 1721 occurs when I try to install the HP Security Manager in HP probook 440g 2 having win pro 8.1.

  • Update Vista caused internet connection problems

    I have tried repairing computer of my sister, who says simply ceased to connect to the internet all of a sudden.  She said that began February 1... After looking through the system restore, I noticed there was an update installed on 31 January, so I

  • Problems to install a program - error: the VC Redist 2005 Sp1 vista installation

    Remember - this is a public forum so never post private information such as numbers of mail or telephone! Ideas: Hello I'm tryring to install a program on the Motorola Web site.  This is the link to media from Motorola (MML).  I download the file but