Multiple aggregate clauses in a group by..
select mstr_date
,sum((case when bs ='S' then -1 else 1 end )*quantity) as qty_sum
,sum((case when bs ='S' then -1 else 1 end)*orig_face) as orig_face_sum
,count(*)
from table_name
where column='xxxx'
group by mstr_date
order by mstr_date
I never tried this until now. Very interesting.
Thursday, December 23, 2010
Thursday, December 2, 2010
Closing a Swing Application
Just calling toplevel.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); is not good enough.
There could be other frames still alive, esp if you are using a third party library.
So your JVM is still running. Here is how you fix it..
Get all the frames that are currently running and dispose each of them
Frame[] frames = toplevel.getFrames();
for(int i=0;i
Frame frame = frames[i];
frame.dispose();
}
-Sonu
There could be other frames still alive, esp if you are using a third party library.
So your JVM is still running. Here is how you fix it..
Get all the frames that are currently running and dispose each of them
Frame[] frames = toplevel.getFrames();
for(int i=0;i
Frame frame = frames[i];
frame.dispose();
}
-Sonu
Wednesday, October 20, 2010
Excel logical if
Compare two columns and find out whats different.
Lets say you would like to compare col A1 and F1. Here is the logical if condition in excel you would use...
=IF(A1=F1,"","***")
The column would print *** when the values in A1 and F1 are different.
-Sunny
Lets say you would like to compare col A1 and F1. Here is the logical if condition in excel you would use...
=IF(A1=F1,"","***")
The column would print *** when the values in A1 and F1 are different.
-Sunny
Thursday, September 9, 2010
useful cvs commands
If you made local changes and if you like to diff the latest version in repository,
cvs -Q diff -c StormAccrual.pl
cvs -Q diff -c StormAccrual.pl
Tuesday, August 10, 2010
Unix file processing
This command is very useful to analyze data files
cut -d ' -f |
single col :
cut -d '|' -f1 uncl_sims_audit_clr_code_null.txt | sort|uniq
multiple cols
cut -d '|' -f1-2 uncl_sims_audit_clr_code_null.txt | sort|uniq
enjoy..!
cut -d '
single col :
cut -d '|' -f1 uncl_sims_audit_clr_code_null.txt | sort|uniq
multiple cols
cut -d '|' -f1-2 uncl_sims_audit_clr_code_null.txt | sort|uniq
enjoy..!
Wednesday, July 7, 2010
Passing arrays to perl subroutines
Finally when we receive thes values in@_ variable then we can not recognize if we had passed one array or two value arraysbecause finally it is getting merged into one.
o
If you want to work with and identify the individual lists passed to Perl, then you need to use references:
(@listc, @listd) = simplesort(\@lista, \@listb);
The leading \ character tells Perl to supply a reference, or pointer, to the array. A reference is actually just a scalar, so we can identify each list by assigning the reference to each array within our subroutine. Now you can write your subroutineas follows:
sub simplesort
{
my ($listaref, $listbref ) = @_;
# De-reference the array list
my (@lista) = @$listaref;
my (@listb) = @$listbref;
# Now you can play with both arrays.
}
o
If you want to work with and identify the individual lists passed to Perl, then you need to use references:
(@listc, @listd) = simplesort(\@lista, \@listb);
The leading \ character tells Perl to supply a reference, or pointer, to the array. A reference is actually just a scalar, so we can identify each list by assigning the reference to each array within our subroutine. Now you can write your subroutineas follows:
sub simplesort
{
my ($listaref, $listbref ) = @_;
# De-reference the array list
my (@lista) = @$listaref;
my (@listb) = @$listbref;
# Now you can play with both arrays.
}
Wednesday, June 23, 2010
Syntax of inner join
select * from foo
inner join (
select 5 as bar
union all select 6
union all select 7
) as x on foo.bar = x.bar
inner join (
select 5 as bar
union all select 6
union all select 7
) as x on foo.bar = x.bar
Subscribe to:
Posts (Atom)