What do you want to do with the very long SQL statements? Do you want to indent them on second/third lines?
BTW: This is what perl was designed for:
pipe the output of awk into this program and save as your report. It will look real pretty
If you need more help with formatting, do man perlform
---------- Post updated at 06:45 PM ---------- Previous update was at 06:38 PM ----------
Jack, here's a break-down of the awk command:
In awk, NR is the total input lines seen, while FNR is the number of input lines seen in the current file. So this essentially means: if we're processing the first file, "do this" (the code in the first set of braces {...}).
That code sets an associate array to the value of the 2nd column (in the first file, remember), where the index is the 1st column -- which is common in both files.
Now do a "next" which means do not process any more code for the current line. This ensures the rest of the awk script is not executed for the first file.
So the first "pattern/program" applies to the first file -- and only the first -- while the second "pattern/program" applies to the second (and subsequent) file(s).
The second pattern/program looks at each line (in the second file) and if the first column is found in the array A, and if the value is not null or not blank, it runs the portion between the braces.
The code in the braces simply replaces the 5th field of that line with the contents of what was seen in line indexed by the first column in the first file.
Hi guys I want to print the values by using this script but its giving the no of rows and columns as input instead of values
Would you plz help me on this
FILE- chr1.txt
1981 1
1971 1
1961 1
1941 1
perl script
#!/usr/bin/perl -w
$infile1 = 'chr1.txt';
$outfile3 = 'out3.txt';
... (3 Replies)
I have read another post about this issue and am wondering how to adapt it
to my own, much simpler, issue.
I have a file of user IDs like so:
333333
321321
546465
...etc
I need to take each number and use it to print records wherein the 5th
field matches the user ID pulled from the... (2 Replies)
Hi, Guys. Please help me to find solution to this problem using shell scripting.
I have an INPUT file with 4 columns separated by tab. Each block of records is separated by -----
-----
Sample1 5402 6680 Pattern01
Sample2 2216 2368 Pattern02... (6 Replies)
Hi everyone,
I have file1 and file2 comma separated both.
file1 is:
Header1,Header2,Header3,Header4,Header5,Header6,Header7,Header8,Header9,Header10
Code7,,,,,,,,,
Code5,,,,,,,,,
Code3,,,,,,,,,
Code9,,,,,,,,,
Code2,,,,,,,,,file2... (17 Replies)
Hello Friends,
I have a CDR file and i need to print out 2 columns with their field position which matches to some constant values,
a part of input file
CZ=1|CZA=1|DIAL=415483420001|EE=13|ESF=1|ET=|FF=0|9|MNC=99|MNP=9041|MTC=0|NID=2|NOA=international|ON=1|
OutPut
... (3 Replies)
Hi Experts,
I am trying to get the output from a matching pattern but unable to construct the awk command:
file :
aa bb cc 11
dd aa cc 33
cc 22 45 68
aa 33 44 44
dd aa cc 37
aa 33 44 67
I want the output to be : ( if $1 match to "aa" start of the line,then print $4 of that line, and... (3 Replies)
Hello,
I have two files file 1 and file 2 each having result of a query on certain database tables and need to compare for Col1 in file1 with Col3 in file2, compare Col2 with Col4 and output the value of Col1 from File1 which is a) not present in Col3 of File2 b) value of Col2 is different from... (2 Replies)
I want to print only the lines in file2 that match file1, in the same order as they appear in file 1
file1
file2
desired output:
I'm getting the lines to match
awk 'FNR==NR {a++}; FNR!=NR && a' file1 file2
but they are in sorted order, which is not what I want:
Can anyone... (4 Replies)
I would like to compare values in column 8, and grep the ones where the different is > 1, columns 1 and 2 are the key for array.
Every 4 rows the records values in columns 1 and 2 changed. Then, the comparison in the column 8 need to be done for the 4 rows everytime columns 1 and 2 changed
... (4 Replies)
Discussion started by: jiam912
4 Replies
LEARN ABOUT OSX
dbix::class::sqlmaker
DBIx::Class::SQLMaker(3) User Contributed Perl Documentation DBIx::Class::SQLMaker(3)NAME
DBIx::Class::SQLMaker - An SQL::Abstract-based SQL maker class
DESCRIPTION
This module is a subclass of SQL::Abstract and includes a number of DBIC-specific workarounds, not yet suitable for inclusion into the
SQL::Abstract core. It also provides all (and more than) the functionality of SQL::Abstract::Limit, see
DBIx::Class::SQLMaker::LimitDialects for more info.
Currently the enhancements to SQL::Abstract are:
o Support for "JOIN" statements (via extended "table/from" support)
o Support of functions in "SELECT" lists
o "GROUP BY"/"HAVING" support (via extensions to the order_by parameter)
o Support of "...FOR UPDATE" type of select statement modifiers
o The "-ident" operator
o The "-value" operator
OPERATORS -ident
Used to explicitly specify an SQL identifier. Takes a plain string as value which is then invariably treated as a column name (and is being
properly quoted if quoting has been requested). Most useful for comparison of two columns:
my %where = (
priority => { '<', 2 },
requestor => { -ident => 'submitter' }
);
which results in:
$stmt = 'WHERE "priority" < ? AND "requestor" = "submitter"';
@bind = ('2');
-value
The -value operator signals that the argument to the right is a raw bind value. It will be passed straight to DBI, without invoking any of
the SQL::Abstract condition-parsing logic. This allows you to, for example, pass an array as a column value for databases that support
array datatypes, e.g.:
my %where = (
array => { -value => [1, 2, 3] }
);
which results in:
$stmt = 'WHERE array = ?';
@bind = ([1, 2, 3]);
AUTHORS
See "CONTRIBUTORS" in DBIx::Class.
LICENSE
You may distribute this code under the same terms as Perl itself.
perl v5.16.2 2012-08-23 DBIx::Class::SQLMaker(3)