Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi guys,
I'm dealing with a apparently easy problem to solve but i've tried so many times that i can't think of nothing anymore. So here's the deal.
| Person | Job | Sequence |
| Bob | Exec10 | 0 |
| Bob | Exec12 | |
| Bob | Exec12 | |
| Chris | DevII | 0 |
| Terry | Aux | 0 |
| Terry | AuxII | |
| Tiffany | Dev | 0 |
(nervermind the zeros, but that's my problem).
See that BOB has 2 jobs, but one got 2 registers. I want to generate a sequence that adds(+1) to the new job for the person. Repeating till the next job row updates. It would be like this:
| Person | Job | Sequence |
| Bob | Exec10 | 1 |
| Bob | Exec12 | 2 |
| Bob | Exec12 | 2 |
| Chris | DevII | 1 |
| Terry | Aux | 1 |
| Terry | AuxII | 2 |
| Tiffany | Dev | 1 |
I know it's simple but i can't figure it out. Thanks in advance! 😃
RESULT

SCRIPT
a:
load *, rowno() as id inline [
Person, Job, Sequence
Bob, Exec10, 0
Bob, Exec12,
Bob, Exec12,
Chris, DevII, 0
Terry, Aux ,0
Terry, AuxII,
Tiffany ,Dev, 0
];
b:
NoConcatenate
load
id, Person, Job,
if(Person<>Peek(Person),
1,
if(Job<>Peek(Job),
peek(Sequence) +1,
peek(Sequence))) as Sequence
Resident a
order by Person, Job;
DROP Table a;
RESULT

SCRIPT
a:
load *, rowno() as id inline [
Person, Job, Sequence
Bob, Exec10, 0
Bob, Exec12,
Bob, Exec12,
Chris, DevII, 0
Terry, Aux ,0
Terry, AuxII,
Tiffany ,Dev, 0
];
b:
NoConcatenate
load
id, Person, Job,
if(Person<>Peek(Person),
1,
if(Job<>Peek(Job),
peek(Sequence) +1,
peek(Sequence))) as Sequence
Resident a
order by Person, Job;
DROP Table a;
Thanks, man! While i was waiting for a response, i've tried this
if(previous(Person)<>Person,1,
if(previous(Person)=Person and previous(Job)<>Job,numsum(Peek('Sequencia'),1),Peek('Sequencia'))) as Sequencia
But it didn't seem to work... after some search there was some trash in our data, f***ing the sequence.
Both yours and mine solution works now. Thanks for your attention!
It's always good to know that are more than one solution 😃