1
2
3
*
4
5
6
*
7
8
9
how to load records between two stars(*),
Answers were Sorted based on User's Feedback
Answer / sunny
select substr(
(select substr('123*456*789', 1 ,
instr('123*456*789','*',1,2)-1) from dual)
,instr(
(select substr('123*456*789', 1 ,
instr('123*456*789','*',1,2)-1) from dual)
,'*',1)+1) from dual;
| Is This Answer Correct ? | 6 Yes | 1 No |
Answer / ankur
small change in the above post..
add an exp after source qualifier...with two more ports
v_out as variable =iif((is_number(inputport),v_out,v_out+1)
output=v_out
so output from this exp will be
1 0
2 0
3 0
* 1
4 1
5 1
6 1
* 2
7 2
8 2
8 2
now add a filter where output=1 and in_number(input)
Thanks
| Is This Answer Correct ? | 4 Yes | 3 No |
Answer / krishna
Mapping
source - SQ -> Exp T/r -> Filter -> target
Exp t/r:
create 4 variable and 3 output ports.
v_curr,v_flag,o_filter,o_flag,v_count,v_prev,0_count
v_flag = iif(v_currnt = '*' OR v_prev = '*' or flag_v=1,
1,0)
v_count = iif(v_prev='*',count+1,count)
o_filter = iif(No!= '*',1,0)
o_flag = v_flag
0_count = v_count
filter t/r:
condition: o_flag=1 AND o_filter=1 AND 0_count!=2
| Is This Answer Correct ? | 1 Yes | 1 No |
Answer / lakshmi
Use Replacechr() in Expression T/r after Source Qualifier
and replace '*' with Space
Then In Filter T/r Use Filter condition as below
iif(isspaces(field,0,1))
| Is This Answer Correct ? | 2 Yes | 2 No |
Answer / siva riddle
first of all , understand the requirement
it's.
records in between * 456 * ,
how to get this 3 records.
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / guest
u can use mapping variable in exp transformation.
and do
decode(v_curr='*' or v_prev='*',setvariable($$,$$+1),$$)
and last port in exp setvariable($$,0) and accrdingly filter the non required...
| Is This Answer Correct ? | 1 Yes | 2 No |
Answer / ankur
small change in the above post..
add an exp after source qualifier...with two more ports
v_out as variable =iif((is_number(inputport),v_out,v_out+1)
output=v_out
so output from this exp will be
1 0
2 0
3 0
* 1
4 1
5 1
6 1
* 2
7 2
8 2
8 2
now add a filter where output=1
Thanks
| Is This Answer Correct ? | 2 Yes | 3 No |
Answer / ankur saini
hey guys c if this works...
add an exp after source qualifier...with two more ports
v_out as variable =iif((is_number(inputport),0,v_out+1)
output=v_out
so output from this exp will be
1 0
2 0
3 0
* 1
....
* 2
...
now add a filter where output>0
Thanks
| Is This Answer Correct ? | 0 Yes | 4 No |
Answer / anas furquan
Use Filter transformation with below condition:
IIF(FIELD!='*',1,0)
Mapping:
Source-->SQ-->Filter-->Target
This works. :)
| Is This Answer Correct ? | 1 Yes | 8 No |
HOW TO YOU LOAD TIME DIMENSION
Explain informatica architecture - version 8 / 9
What are the associated ports in look up T/R.
Major difference between SQL override and Lookup Sql override
how to send unique records to one target and duplicate records to another target by using dynamic lookup cache????? please explain me briefly///(when we use this we look up on which target unique target ya duplicate target)
I want expect first and last record remaining all records will be loaded into target? which transformations we can use?
why do we go for update strategy tr in SCD rather using the session properties?
What is depict expression change?
where does the default group roew in a router is stored what is the default size of memory in router
I have two different source structure tables, but I want to load into single target table? How do I go about it? Explain in detail through mapping flow.
In which situation we will use persistant cache and shared cache in real time. plzsss answer with example
What are the joiner caches?