Need help in GREP command.....


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Need help in GREP command.....
# 1  
Old 01-06-2011
Need help in GREP command.....

Hi UNIX Gurus,

I want to grep the WHERE clause mentioned in the SQL like below or from all the complez queries having this kind of logic. Basic intention is to check the record count impacted by the SQL (mentioned below). I am using this SQL, grep its where clause and creating another SELECT COUNT(*) sql.

Code:
sed 's/.*\([wW][hH][eE][rR][eE] .*$\)/\1/' $dml > $temp1 
sed "s/[wW][hH][eE][rR][eE]/select count(*) from $SCH.$TBL where/" $temp1 > $ddl
rm temp1

Following is the SQL mentioned in the $dml file:

Code:
UPDATE 
<TABLE_1>
SET 
Field_1_1= Value
WHERE 
Field_1_2 = 'XYZ' AND 
Field_1_3 = (SELECT  Field_2_1 FROM <Table_2> WHERE Field_2_2=Value);


But for the queries mentioned above, it is not working properly......
ideally I want it to create a SQL....


Select COUNT(*) from <TABLE_1>
WHERE
Field_1_2 = 'XYZ' AND
Field_1_3 = (SELECT Field_2_1 FROM <Table_2> WHERE Field_2_2=Value);



but instead of this it is only picking the WHERE from the in-query.


Can anyone help me in resolving this issue....


Regards,
New to unix
# 2  
Old 01-06-2011
Are you looking for something like this?
Code:
awk 'NR==2{print "Select COUNT(*) from " $0} /WHERE/{p=1} p' $dml

# 3  
Old 01-06-2011
its not creating a SELECT COUNT(*) query from that query.....
UPDATE query remains unchanged after executing this command.....
# 4  
Old 01-06-2011
In case of multiple update statements in same file:
Code:
awk '{print}/UPDATE/,/;/ $0 ~ "UPDATE" {getline; a="Select COUNT(*) from " $0} /WHERE/,/;/{a=a"\n"$0;} $0 ~ /;$/{print a;}' $dml

This will print all file content as it is, along with corresponding SELECT queries after every update statement.

Last edited by anurag.singh; 01-06-2011 at 03:42 PM..
# 5  
Old 01-06-2011
Do you get the right output on the screen?
# 6  
Old 01-06-2011
@ Franklin: no....i was getting same query again.....i mean the updte query i mentione in the input file....

@ Anurag: what needs to be used in place of input file, i am using the file name having DML statement (update query I mentioned in my 1st post)....

It is giving me: "Select COUNT(*) from"

Franklin/Anurag: thanks for your valuable time and suggestions, i think we are almost there and will crack it soon. Being a newcomer in unix scripting, i was having hard times.....
# 7  
Old 01-06-2011
inputFile is your DML file name. Modified command above should work for you.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Help on grep command

for example i have a directory home/solaris/unix/samplefiles/ with defaults files in it.. those default files have 1 word in common "UNIX". how can i list the files without "UNIX" words in it using grep command thanks, im using unix solaris, korn shell.. (1 Reply)
Discussion started by: daveaztig14
1 Replies

2. Shell Programming and Scripting

Grep command giving different result for different users for same command

Hello, I am running below command as root user #nodetool cfstats tests | grep "Memtable switch count" Memtable switch count: 12 Where as when I try to run same command as another user it gives different result. #su -l zabbix -s /bin/bash -c "nodetool cfstats tests | grep "Memtable switch... (10 Replies)
Discussion started by: Pushpraj
10 Replies

3. Shell Programming and Scripting

Grep command

grep -i -f panel_genes.txt hg19_refGene.txt > match.txt seems to be pulling names the do not exist in the input file (panel_genes.txt) - the output is attached as well (match.txt) For example, RNF185 or ZNF146 are not genes in the input. I am trying to match the input file genes only and am... (9 Replies)
Discussion started by: cmccabe
9 Replies

4. Shell Programming and Scripting

help on grep command...

Hi I have lots of file in on folder and i want to egrep from only few files. List of files...... Polt_KJ_430_OutputRBS_istUt_CR2.log Polt_KN_4122_OutputRBS_ncChk_CR.log Polt_LN_2230_OutputRNC_Hth_CLKLKL.log Solt_KJ_430_OutputRBS_istUt_CR2.log Solt_KN_4122_OutputRBS_ncChk_CR3.log... (2 Replies)
Discussion started by: asavaliya
2 Replies

5. Shell Programming and Scripting

Grep Command

Hi, I have around 500 Text files and Each file will be having either String1 or String2. I want to list the file only which has String1 and Sting2 in a single command.. (5 Replies)
Discussion started by: balasubramani04
5 Replies

6. Shell Programming and Scripting

Help with using grep command with copy command

Hi, im taking an entry Unix class, and as part of my lab assignment I have to copy all files in the /home/david/lab3 directory that have the file extension .save to your lab3/temp directory. I'm having trouble getting the grep to do anything worth while I've been trying to do: cp... (6 Replies)
Discussion started by: Critical jeff
6 Replies

7. Shell Programming and Scripting

can anyone help with shell script command about searching word with grep command?

i want to search in the current directory all the files that contain one word for example "hello" i want to achieve it with the grep command but not with the grep * (2 Replies)
Discussion started by: aintour
2 Replies

8. UNIX for Advanced & Expert Users

how to exclude the GREP command from GREP

I am doing "ps -f" to see my process. but I get lines that one of it represents the ps command itself. I want to grep it out using -v flag, but than I get another process that belongs to the GREP itself : I would like to exclude # ps -f UID PID PPID C STIME TTY TIME CMD... (2 Replies)
Discussion started by: yamsin789
2 Replies

9. UNIX for Dummies Questions & Answers

grep command

hi all i have directory /usr under this directory i have subdirectories tmp1,tmp2,tmp3 like this /usr/tmp1 /usr/tmp2 /usr/tmp3 and so on i want to search string in files (i don't know the name of the files)and i want to serch it in all the directories under the /usr how shell i do... (3 Replies)
Discussion started by: naamas03
3 Replies

10. Shell Programming and Scripting

grep command

What is the meaning of this grep -v $object grant_BU.sql>temp (1 Reply)
Discussion started by: debasis.mishra
1 Replies
Login or Register to Ask a Question